Git Commit Daily или Commit, когда функция будет завершена? - PullRequest
0 голосов
/ 08 ноября 2018

Я хочу знать, что будет более выполнимым (или соглашением, которому необходимо следовать), если я фиксирую / подталкиваю свой ежедневный прогресс в функции или я фиксирую / нажимаю, когда функция или модуль завершены?

1 Ответ

0 голосов
/ 08 ноября 2018

Это зависит от того, что вы подразумеваете под «Фиксацией» в этом контексте. Для многих пользователей, не имеющих истории, понятие «фиксация» состояло в том, чтобы фиксировать изменения обратно в окончательный центральный репозиторий (из которого все другие пользователи получают обновления).

Итак, вы имеете в виду git "commit" для вашего локального репо или git "push" для удаленного репо?

Если это локальный репо "коммит", то делайте это все время. И сделайте это в конце дня, если это не осуждается. Таким образом, вы можете отслеживать изменения.

«Пуш» к удаленному репо (конечно же, к ветви связанных функций) - это другой зверь.

Многое зависит от того, как вы и ваша команда организуете свою работу / рабочий день. Некоторым командам требуется регистрация (commit / push), чтобы вы не потеряли свою работу. Некоторые из них подходят для «просто коммитить локально и нажимать, когда это работает».

Это также зависит от стратегии разветвления вашей команды. В большинстве случаев вы можете быть единственным человеком, работающим над функцией. Это означает, что вы единственный в ветке. Если вы отметите нерабочий код, это НЕ МОЖЕТ быть проблемой.

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

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

Я фанат как проталкивать рабочий код, так и не терять свою работу. Вот мой подход

  • Выполняйте свою работу небольшими кусками (бла-бла, Agile-бла, не говоря об этом). Исправьте одну часть того, над чем вы работаете. Если это работает "хорошо" (не выбрасывает шину), тогда передайте изменения. Если ваша команда хорошо с этим справится, НАКЛАДИТЕ эту работу в филиал в удаленном репо.

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

...