Dutchakdev

Code, hacks and Rock and Roll.

Git-tips или не много о чистоте и безопасности

| Comments

Сегодня пересмотрел свои некоторые действия при работе с проектом и пришел к некоторым интересным вещам, а так-же подчеркнул для себя несколько важных методик, с которыми сейчас буду с вами делится.

  • Ну вопервых, правило №1Сделал фичу - закомичу. Странно, но я как-то этот момент все время упускаю, и после недавней практики когда мне нужно было использовать замечательную фишу гита cherry-pick для разрешения одной проблемы, я понял что теперь все изменится. Так же главное что бы коментарий к комиту нес важную информацию, где у многих возникают проблемы на данном этапе, этого стоит избегать.

  • Если фича разрабатывается долгий период времени в отдельной ветке – почаще стягивайте себе мастер. Это можно сделать либо простым pull: git pull origin master либо merge git merge origin/master

  • Для мержа фичи в мастер используйте git merge --no-ff featureBranch Флаг --no-ff cоздает merge-коммит, даже если технически этого можно избежать. Merge-коммиты очень полезны, так как содержат важную информацию:

    • коммиты, относящиеся к этой фиче, остаются сгруппированными
    • когда и кем было выполнено слияние
    • откуда пришли изменения (в нашем случае из ветки «featureBranch»)
  • Для соблюдения порядка и наведения чистоты незабываем делать следующие вещи:

    • Перед каждым пушем делайте: git rebase -i @{u}
      • Комманда переписывает только локальные коммиты, которые вы собираетесь запушить, хотя rebase’ом так же не стоит увлекатся
    • Удаляйте не нужные ветки
    • Важно иметь схему именований новых веток. Как вариант использовать уникальные идентификаторы из баг-трекера, и делать что-то типа feature-777 или hotfix-123. Одна задача – одна ветка.
    • git pull --rebase вместо простого git pull
  • Очень важное правило: чем меньше вы используете “полезных программ” для работы с гитом – тем меньше у вас проблем. Ну и все таки, вам нужно то всего пару команд запомнить, стоит ли для этого ставить какой-то софт?

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

  • И последнее: Маленький мальчик пушил в мастер и помер.

Comments