Главная

Плохие практики использования Git

Чтобы двигаться вперед, приходится часто возвращаться

Поделиться:
 

9+

В этой статье я расскажу о наиболее распространенных ошибках, которые совершают новички при использовании Git.

Надеюсь, вы знаете, что Git — это невероятно эффективная система контроля версий VCS (Version Control System), которая может работать с проектами любого размера. Основное преимущество Git заключается в том, что несколько разработчиков или команд могут работать над одним проектом независимо, не мешая работе своих коллег.

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

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

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

Git Workflow

Что такое Git WorkflowGit Workflow — это пошаговая инструкция, которая описывает, как следует использовать Git, чтобы работать продуктивнее. Более подробную информацию о том, как придерживаться Git Workflow, вы можете прочитать здесь. В ранее упомянутой статье наиболее распространенными ошибками с Git Workflow среди студентов были:

  1. Студенты коммитят новые фичи на ветку ‘development’ вместо ветки ‘features’.
  2. Студенты коммитят на произвольные ветки.
  3. Студенты забывают переходить на нужную им ветку и делают коммит.

Создание коммитов

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

☝ Еще одна плохая практика, которую я наблюдаю у многих новичков, — это закомментированные части кода. Зачем вы это делаете? Git же и был создан для отслеживания предыдущих версий проекта. Смело удаляйте это непотребство.

Push

Push коммитов — это самая проблематичная операция для студентов.
Многие пишут код, который не компилируется, забывают его тестить и пушат в репозиторий. Более того, они используют принудительный push, потому что не знают, как правильно сделать слияние своей работы с репозиторием команды. Это приводит к потере коммитов других людей. Кроме того, студенты часто не знают, что они могут пушить несколько коммитов в свои репозитории одной командой.

Merging (слияние веток)

Слияние веток — одна из самых сложных вещей в работе с Git. Даже будучи опытным пользователем Git, вы можете столкнуться с конфликтами слияний, и процесс их решения не всегда проходит гладко. Новички, в свою очередь, любят делать слияние не тех веток. Кроме того, они делают rebase коммитов для интеграции кода.

Fetching

Студенты забывают делать fetch регулярно. В итоге получается так, что у них скапливается много коммитов для интеграции, что приводит к более высоким рискам конфликтов и неправильных слияний.

Ветвление(branches)

Ветвление — еще одна сложная и запутанная категория для новичков в Git. Проблем тут куча — от создания тегов при неправильных коммитах до несоблюдения соглашений о присвоении имен веткам/тегам.
Вот еще несколько интересных заключений:
● Студенты любят создавать локальную ветку под названием origin/master. Когда эту ветку пушат на удаленный репозиторий, то она получает имя origin/master.
● Студенты создают ветку под названием «HEAD», которая является именем указателя, который указывает на последний коммит. Это порождает путаницу и неразбериху.
● Студенты создают ‘orphan’ коммит в новой ветке, когда этого вовсе не требуется.

Заключение

Подводя итог, я рекомендую вам прочитать полный текст статьи, чтобы понять всю суть моих умозаключений. Я считаю, что мои выводы совершенно верны в конъюнктуре современной индустрии разработки программного обеспечения, и многие новички могут столкнуться с теми же проблемами Git. Надеюсь, вам понравилось читать эту статью, и я желаю вам хорошего дня 😊

9+