Обновить
38.47

Git *

Система управления версиями файлов

Сначала показывать
Порог рейтинга
Уровень сложности

Покрываем плэйбуками ansible IaC в части предоставления доступа

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели2.8K

Итак мы уже научились быстро поднимать инфраструктуру с помощью IaC, завели кучу репозиторриев и готовы восстановить исковерканную или сломанную инфраструктуру в части готовности сервисов. В качесте следующего этапа можно рассмотреть предоставление доступов к ресурсам и документирование предоставления таких доступов. Такой подход позволит не только быстро находить на каком основании Вася дропнул табличку на проде, но и ускорить предоставление доступов и сократить количество ошибок.

Читать далее

Реализация Multiple sources Argo CD + ChartMuseum для 10 однотипных микросервисов

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели5.5K

Приветствую! Меня зовут Ксения, и я — DevOps инженер компании Smartex. 

Я люблю создавать инфраструктуру и процессы, которые помогают разработчикам и операционной команде быть более эффективными и продуктивными. 

Если ваша повседневная рутина связана с множеством однотипных микросервисов и разнообразными средами, данная информация может быть для вас полезна. Материал рассчитан на Junior+ и Middle DevOps специалистов.

Читать далее

Двадцать лет — ничто

Время на прочтение7 мин
Охват и читатели22K
В прошлом выпуске журнала мы утверждали, что английский язык стал в индустрии настолько вездесущим, что мы больше задаемся вопросом, почему используем именно его. То же самое можно сказать и о Git. Сложно представить себе, что каких-то двадцать лет назад ландшафт систем управления исходным кодом был разнообразнее и выбрать из этих систем какую-то одну было гораздо сложнее. Собственно, Git тогда еще и среди вариантов не значился. Прежде чем рассуждать, к лучшему или к худшему установилась гегемония Git, давайте ненадолго вернемся в прошлое.



Источник

В одном из самых знаменитых танго в истории Карлос Гардель пропел хорошо известные строки:

Ощутить… что жизнь – глоток свежего воздуха,
что двадцать лет – ничто,
что лихорадочный взгляд,
бродящий в тенях,
находит тебя и называет по имени.

Двадцать лет назад


Второе издание Совершенного кода Стива Макконнелла было опубликовано в 2004 году. На 668 странице этого девятисотстраничного талмуда мы находим единственное упоминание темы управления исходным кодом на всю книгу, длиной примерно в три четверти страницы. Больше ничего. ChatGPT без труда обобщил бы сказанное в этих абзацах в одном предложении: «Применение ПО для контроля версий – это хорошо, оно дает несколько существенных преимуществ». Не бог весть какие новости. От GitOps нас тогда отделяло очень многое.
Читать дальше →

Вышел релиз GitLab 16.10 с семантическим версионированием каталога CI/CD

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели5.9K

Что такое semantic-release и как с ним работать

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели16K

Привет! Я — Алексей Бондаренко, работаю в команде Платформа Банки.ру. Сегодня хочу рассказать о semantic-release и его практическом применении на примере упрощения разработки и внедрения библиотеки в проект. 

Читать далее

Как настроить тестирование с Vanessa Automation и Gitlab с нуля

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели22K

Боитесь, что тесты пропадут, если компьютер сломается? Хотите видеть историю изменений? Вынуждены запускать тесты в отпуске, т.к. у других членов команды нет к ним доступа? Не можете одновременно работать над написанием и прогоном? Знакомы эти проблемы, хотите избавиться от них раз и навсегда? Тогда вам необходимо использовать Vanessa Automation вместе с Gitlab. И я готов показать этот процесс на максимально простом примере. Меня зовут Дмитрий, я занимаюсь тестированием 1С Зуп в команде HR Tech Самолет. В сфере 1С я уже 7 лет, работал консультантом, аналитиком и программистом. А в тестирование я перешел, чтобы уберечь галактику от ошибок ПО. Поехали!

Читать далее

Технологии групповой разработки в современной 1С-индустрии

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели10K

Привет, Хабр! Меня зовут Стас Ганиев, программист 1С, в этой статье я рассмотрю и сравню три самых популярных подхода к групповой разработке: хранилище конфигураций, конфигуратор + Git, EDT + Git.

Читать далее

Как в git работает HEAD

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели32K

Недавно я провела в Mastodon опрос о том, насколько мои читатели уверены в том, что они хорошо понимают работу HEAD в Git. Результаты (на основании примерно 1700 голосов) меня немного удивили:

10% — 100%

36% — достаточно сильно уверен

39% — уверен в некоторой степени

15% — представления не имею

Меня удивило, что люди не уверены в своём понимании: я-то считала, что HEAD — это довольно простая тема.

Обычно, когда остальные, в отличие от меня, считают какую-то тему запутанной, причина заключается в какой-то скрытой сложности, которую я не учитываю. И в дальнейших обсуждениях выяснилось, что HEAD действительно чуть сложнее, чем я считала!

Читать далее

Современные команды и фичи Git, которыми стоит пользоваться

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели53K

Мы, разработчики ПО, пользуемся git каждый день, однако большинство из нас применяет только самые основные команды, например, addcommitpush и pull, как будто на дворе по-прежнему 2005 год.

С тех пор в Git появилось множество фич, пользование которыми может сильно упросить вашу жизнь. Так давайте исследуем некоторые из недавно добавленных современных команд git, о которых вам стоит знать.

Читать далее

Настройка CI/CD для самых маленьких разработчиков

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели75K

Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позволяет не тратить время на поход к коллегам (и ожидание их реакции), т.е. в целом повышает комфорт работы и дает понимание, почему все происходит именно так.

Настроек для пайплайна Gitlab очень много. В этой статье, не вдаваясь в недра тюнинга, поговорим о том, как выглядит скрипт пайплайна, из каких блоков он состоит и что может содержать.

Читать далее

Автодокументация Doxygen и её развертывание на GitHub Pages

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели17K

Наверняка вы создавали open source проекты и выкладывали их на GitHub, но я уверен, что очень немногие из вас создавали документацию для этих проектов. В этой статье я расскажу, как создавать и публиковать доки максимально просто.

Документация будет создаваться на основе исходного кода, она будет обновляться при каждом коммите и при этом будет доступна через интернет. Документирование происходит через Doxygen, в качестве хостинга выступает GitHub, а за обновление документации отвечает GitHub Pages.

Читать далее

Почему Facebook* не использует Git

Время на прочтение8 мин
Охват и читатели43K

Я работаю над созданием Graphite, источником вдохновения для которого стал внутренний инструментарий Facebook. Когда я решил создать стартап с друзьями, то никогда раньше не слышал о Mercurial, хотя всегда страстно любил инструменты разработчика. Мой предыдущий опыт разработки включал в себя личные проекты, домашнюю работу в колледже, разработку для iOS в Google и развитие инфраструктуры в Airbnb. На протяжении всей моей карьеры использование git было таким же естественным, как воздух. Он настолько популярен, что лично я считал его единственным подходящим инструментом для создания изменений в коде и управления ими.

Забавно, что специалист по Mercurial Грегори Gregory Szorc работал рядом со мной в Airbnb, хотя я знал его только как приятного коллегу, но не представлял, что он контрибьютор.

В 2021 году мои коллеги по команде Томас и Ник раскрыли мне глаза. Они пришли из Facebook и, к моему удивлению, едва знали Git. Зато они имели глубокое понимание паттернов Mercurial и рабочего процесса Facebook на основе «многослойных diff» (stacked diff). Со временем они убедили меня в полезности этого паттерна и мы развернули направление развития компании, чтобы реализовать многослойные diff для разработчиков GitHub.

Но пост посвящён не нашему стартапу. Он о важном вопросе, не дававшем мне покоя последние три года. Почему фейсбукеры не пользуются Git? Зачем они выбрали Mercurial и создали на его основе собственные рабочие процессы? Я знаю что Google не пользуется Git, но это логично, культура разработки Google возникла на пять лет раньше Git. Facebook же был основан примерно в то же время, что и создан Git, около 2004 года, и ко времени, когда Facebook начал серьёзно выбирать инструментарий для управления исходниками, Git был старше и популярнее Mercurial. Так почему же Facebook не использует Git?

Читать далее

Вышел релиз GitLab 16.9 с расширенным доступом к бета-версии Duo Chat

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели1.2K

GitLab 16.9


Мы с радостью объявляем о релизе GitLab 16.9 с GitLab Duo Chat, доступном для Premium пользователей SaaS и в инстансах с самостоятельным управлением! Также появилась возможность запрашивать изменения в мерж-реквесте без блокировки мержа, улучшенный интерфейс страницы переменных CI/CD, новые настройки для автоматической отмены конвейеров и многие другие фичи!

Читать дальше →

Ближайшие события

Раскладываем Git по полочкам: терминология

Время на прочтение7 мин
Охват и читатели33K

Первый раз столкнулись с Git и не понимаете, что это такое?

Устали бездумно выполнять серию комманд чтобы закинуть свой проект на GitHub?

Хотите понять, чем отличается merge, rebase, push и pull?

Надоело видеть ошибку о non fast-forward merge и не понимать, что с этим делать?

Сейчас попробуем разобраться в этом всем.

Поехали!

Git в условиях экстремальной атомарности веток

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели4.9K

Как устроены ваши ветки в git? Как они выглядят, какого размера? Под катом я вам расскажу, как сначала загнать себя в жесткие рамки, а потом одним лайфхаком справиться с последствиями.

Читать далее

Популярные конфигурационные опции для работы с git

Время на прочтение10 мин
Охват и читатели18K

Привет! Я всегда мечтала, чтобы в инструментах для работы с командной строкой заранее сообщалось, насколько популярны те или иные конфигурационные опции, предусмотренные в них, например:

o    «В принципе, никто этим не пользуется»

o    «Этой опцией пользуется 80% аудитории, стоит ознакомиться»

o    «У этой опции предусмотрено 6 возможных значений, но в реальной практике применяется всего 2 из них».

Так что я решила спросить пользователей Mastodon, какие у них любимые опции конфигурации git:

А какие опции git config вы больше всего любите выставлять? В настоящее время у меня в ~/.gitconfig установлены только git config push.autosetupremote true и git config init.defaultBranch main, вот интересуюсь, а что выставляют другие люди.

Как обычно, получила КУЧУ отличных откликов и так узнала множество очень популярных опций конфигурации git, о которых ранее никогда не слышала.

Далее перечислю их по порядку, при этом (очень примерно) попытаюсь начать с наиболее популярных.

Все описанные опции документированы на странице man git-config, а также на этой странице.

Читать далее

Итак, вы думаете, что знаете Git? Часть третья: реально большие репозитории

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели22K


Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git.

Вам хочется использовать ванильный Git, чтобы управлять репозиторием с объёмом 300 ГБ в 3,5 млн файлов, которые без проблем получают пуш каждые 20 секунд от 4000 разработчиков? Тогда читайте дальше!


Вот агенда блога — наша блогенда:


Читать дальше →

10 полезных команд Git

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели25K


В этой статье мы рассмотрим набор команд, которые немного облегчат вам жизнь и повысят продуктивность.
Читать дальше →

Сборка в Gitlab как маркер здоровья архитектуры

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели8.4K

Не так давно мне довелось настраивать СI/CD для среднего по размеру проекта, состоящего из +-20 микросервисов и 5 переиспользуемых библиотек. Изначально все микросервисы и библиотеки жили в собственных репозиториях и я настроил CI/CD индивидуально для каждой репы, вынеся общие скрипты и настройки в отдельный проект. Так мы пожили какое-то время, после чего пришла идея объединить все в монорепу, для удобства сопровождения и большей прозрачности при разработке.

Читать далее

Итак, вы думаете, что знаете Git? Часть вторая: новое в Git

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели31K

Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git.


Далее в нашей серии постов из трёх частей у нас новые фичи! Здесь я расскажу про пять относительно новых вещей в git, о которых вы могли не слышать, потому что ну почему вы?


Мы взглянем на:


Погружаемся!

Вклад авторов