Рубрика «Git» - 19

Как генерировать осмысленные коммиты. Применяем стандарт Conventional Commits - 1

Привычный хаос в названиях коммитов. Знакомая картина?

Наверняка вы знаете git-flow. Это отличный набор соглашений по упорядочиванию работы с ветками в Git. Он хорошо документирован и широко распространен. Обычно мы знакомы с правильным ветвлением и много говорим об этом, но, к сожалению, уделяем слишком мало внимания вопросу наименования коммитов, поэтому часто сообщения в Git пишутся бессистемно.

Меня зовут Ержан Ташбенбетов, я работаю в одной из команд Яндекс.Маркета. И сегодня я расскажу читателям Хабра, какие инструменты для создания осмысленных коммитов мы используем в команде. Приглашаю присоединиться к обсуждению этой темы.

Читать полностью »

Принимая решение об использовании того или иного средства в собственных проектах, инженеру приходится не только изучать сопроводительную документацию, но и проводить серию экспериментов для того, чтобы избежать потенциальных проблем в будущем. Если же речь идет о CM-политике, рассчитанной на длительную перспективу, цена ошибки выбора становится достаточно высока.

Целью настоящей работы является практическое изучение средства управления поддеревьями Git.

Начиная с ревизии 1.7.11 upstream-репозиторий Git, в каталоге contrib/subtree, содержит средство автоматизации работы с поддеревьями.

Сервис git-subtree(1) фактически является полезной надстройкой, использующей функции git-read-tree(1) и git-write-tree(1). Поэтому ссылки в командах git-subtree(1) add/pull/push:

  git subtree add --prefix=<subdir> <remote> <ref>

могут представлять собой, как имена веток, так и имена тегов удаленного репозитория.

Кроме того, если заранее добавить удаленный репозиторий в конфигурационный файл локального репозитория .git/config, с помошью команды:

bash-4.4$ git remote add build-system ../../remote/build-system.git

где build-system является именем удаленного репозитория ../../remote/build-system.git, то в дальнейшем, при использовании команд git-subtree(1) add/pull/push, мы сможем ссылаться на upstream-репозиторий remote/build-system.git по имени.

На данный момент git-subtree(1) практически не развивается, а лишь поддерживается в актуальном состоянии для текущей степени развития проекта Git.

Однако git-subtree(1) является наиболее популярным и мощным средством работы с поддеревьями.

Читать полностью »

Картинка для привлечения внимания

Мы рады представить новый релиз GitLab 11.4 с долгожданными обновлениями, призванными помочь командам работать эффективнее. Большинство команд, применяющих DevOps, стремятся к сокращению времени цикла поставки. Поэтому разработчики всегда рады улучшениям, которые уменьшат количество работы и потери во времени, так как за счет этого ускоряется поставка продукта и повышаются бизнес-показатели.

Читать полностью »

Проект git-subrepo существует достаточно давно, однако упоминаний о нем незаслуженно мало. Автором git-subrepo является Ingy döt Net.

Если посмотреть на историю комитов master-ветки проекта, то может показаться, что проект остановился в развитии 2 года назад. Однако работы над проектом ведутся и хочется надеяться, что скоро будет выпущена версия 0.4.0.

Важным свойством данного средства является то, что на стороне пользователя нет необходимости устанавливать git-subrepo до тех пор, пока пользователь не решит делать комиты в upstream-репозитории подпроектов. Кроме того, пользователь получает полностью готовое и настроенное дерево исходного кода в момент копирования основного репозитория посредством стандартной команды git-clone(1).

Читать полностью »

Сегодня после нескольких попыток создания Issue и записи комментариев к уже существующими — столкнулся с тем что запись/комментарий визуально отображаются а после перезагрузки — пропадают.

На GitHub произошёл сбой БД - 1

Читать полностью »

Всем доброго дня!

Провели на прошлой недели открытый вебинар в рамках нашего курса «Администратор Linux», где Леонид разбирал быструю настройку Vagrant-а, а так же возможности и нюансы совместного использования Vagrant и Git.

Вопросы и комментарии, как всегда, ждём или тут, или их можно задать нашим преподавателям, зайдя на день открытых дверейЧитать полностью »

Картинка для привлечения внимания

С новым релизом GitLab 11.3 мы рады представить вам поддержку репозиториев Maven, владельцев кода (Code Owners), защищенные окружения и прогнозы для эпиков. Все это поможет автоматизировать управление окружениями и кодом, что позволит разработчикам на Java быть еще эффективнее.

Читать полностью »

Ошибка в коммите… Как её исправить? Беспорядок в истории коммитов… Как привести всё в пристойный вид? Автор статьи, перевод которой мы публикуем сегодня, говорит, что она написана специально для тех, кто задавался такими вопросами. По его словам, изучив методики работы с Git, представленные здесь, можно значительно продвинуться по пути освоения Git.

Git: исправление ошибок и наведение порядка в коммитах - 1


Предполагается, что читатель этой статьи уже знаком с основами Git. Если это не так — сначала рекомендуется освоить базу, например, воспользовавшись этим материалом.
Читать полностью »

Не так давно на одном из проектов нашей компании было принято решение наконец отказаться от использования Subversion для хранения и версионирования кода в пользу Git.

Организация хранения кода в GitLab и интеграция код ревью в GitFlow - 1

Основными целями перехода были следующие:

  • Повышение прозрачности процесса разработки.
  • Внедрение обязательной процедуры код ревью до выноса обновлений на тестовые среды.
  • Внедрение непрерывной интеграции для сборки обновлений после код ревью и установки их на тестовые среды.

Читать полностью »

В свете приближающегося конца мне посоветовали написать несколько слов.

Come with me, young man, and I will take you to worlds you have never seen. (Limbo & Doctor Who)

Чтобы понять их — расскажу небольшую историю, о жизни одного человека.

Детство

Воспоминания из раздела "ненависть"

Представьте, что вам сейчас 2.5-4.9 года. Основное время вы проводите в квартире у бабушки с дедушкой (по линии отца; квартира родителей находится в этом же доме, но на другом этаже). Вы любите исследовать все вокруг, и особенно любите изучать работу сложных устройств: электронных приборов (радио, кассетные плееры), механизмов (часы), … Любите чинить их, когда они сломаются, либо чинить их, когда вы сами их сломаете при очередной разборке-сборке. [возможно, этому послужило одно событие в жизни — про него расскажу ниже]. А еще больше любите из нескольких устройств собирать одну вещь, которая вам нужна, либо улучшать одно при помощи разборки на запчасти другого.

И при этом вас "фаршируют" такими книгами как "истории Геракла" и другими детскими/недетскими книгами, которые вы начинаете ненавидеть. Ненавидите из-за того, что вся информация, которая содержится в этих книгах — бесполезна для вас, и при этом вас заставляют "поглощать" ее в большом количестве. Причем других книг в вашем окружении нет, и вы начинаете считать, что все существующие книги наполнены только бесполезной информацией. И когда вы в первый раз в жизни спрашиваете "Что такое библиотека?", и вам отвечают "место, где хранится книги"… (представьте "пожарных" из "451 градус по Фаренгейту")

Положительная сторона

А теперь вопрос: как вам удавалось разбираться в сложных устройствах, чинить их, пересобирать их — без чтения "технической литературы"? Единственное, что вам было доступно — это схемы печатных плат. На "ближайших людей" рассчитывать не приходилось, их специальности: "повар", "модельер" + экономическое образование.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js