Написание фиксации сообщений в качестве сольного разработчика?

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

Но в тех проектах, где я являюсь сольным разработчиком, работающим над проектом, а репозиторий размещен на моем личном ноутбуке и даже не размещен клиентом, поэтому никто, кроме меня, не увидит коммиты, если я все еще писать сообщения фиксации?

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

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

30 голосов | спросил Click Upvote 30 PMpMon, 30 Apr 2012 23:54:29 +040054Monday 2012, 23:54:29

10 ответов


43

Ну вот одна из причин: если вы вдруг осознаете, что что-то было нарушено за последние несколько сотен коммитов (возможно, если вы совершаете при каждом незначительном редактировании, менее выполнимо, если вы, как и я, совершаете только «стабильные» снимки), вы более легко найти, где вы вставили ошибку, если вы написали четкие сообщения о фиксации, а не «исправления». (Скорее, любимая строка коллеги). Конечно, вы можете пойти с svn log или любым SCM, который вы используете, но он должен быть проще другим способом вокруг.

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

ответил K.Steff 1 Mayam12 2012, 00:08:45
52

Я стараюсь всегда. Сколько раз вы оглядываетесь назад и думаете: «Человек, что я делал, когда я сделал это изменение». Я делаю все время. 30 секунд написания сообщения могут сэкономить вам 20 минут работы, пытаясь запомнить.

ответил kemiller2002 1 Mayam12 2012, 00:01:59
20

Вы честно полагаете, что накладные расходы при наборе от 40 до 80 символов на простом английском языке являются значительными накладными расходами для фиксации или вы ищете оправдание, чтобы быть ленивым?

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

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

ответил mattnz 1 Mayam12 2012, 00:09:43
14
  • Вы не всегда будете сольным разработчиком.

  • В конечном итоге вы сломаете свою кодовую базу и попытаетесь ее восстановить. Хорошие сообщения о фиксации сэкономит вам часы.

  • Вы не можете вспомнить, что вы делали три недели назад, верно?

  • Обязательные сообщения должны быть очень четкими. Если это не так, то вы либо не закончили работу над заданием, либо одна задача была распределена по двум или более задачам.

ответил CodeART 1 Mayam12 2012, 00:36:55
7

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

ответил jmruc 30 PMpMon, 30 Apr 2012 23:59:08 +040059Monday 2012, 23:59:08
6

Одна из возможных причин: это заставляет вас думать более абстрактно об изменениях, которые вы только что сделали, и о структурных изменениях.

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

ответил Steve Bennett 1 Mayam12 2012, 04:01:26
4

Я был единственным участником проекта TXR и сохранил подробный ChangeLog с самого раннего этапа проекта. Это около 11 000 строк и растет: http://www.kylheku.com/cgit/txr/tree/ChangeLog

(Сообщения фиксации в репо - это всего лишь копия того, что происходит в ChangeLog.)

[2016 edit: с середины 2015 года я больше не поддерживаю файл ChangeLog; однако сообщения фиксации записываются в формате, который соответствует соглашениям Git и ChangeLog в одно и то же время. Такой же уровень детализации существует, что не вызывает проблем с слиянием. Файл ChangeLog может быть механически восстановлен из этих комментариев.]

Да, более одного раза я вернулся к старому сообщению фиксации, связанному с изменением, которое что-то сломало (непокрытое с помощью git bisect

В ChangeLog вы можете указать, когда была введена функция, тип, макрос или глобальная переменная и когда впоследствии были затронуты изменения.

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

Чтобы написать подробное сообщение фиксации, вы получите аналогичные преимущества для проверки кода вашего коммита кем-то другим. Значение в обзоре фиксации не так много, что кто-то проверяет ваш код, но вы должны объяснить свои изменения другому разработчику.

Когда вы пытаетесь объяснить вещи, вы иногда обнаруживаете, что они не имеют смысла.

Другая причина: вы можете поймать себя на бесполезное изменение . Написав подробный комментарий коммита, вы фиксируете представление высокого уровня о том, что делаете, а затем иногда сталкиваетесь с тем, что это не очень хорошее изменение.

Я иногда делал изменения, когда в середине записи записи ChangeLog я понял, что это будет git reset --hard (выбросить эти бесполезные изменения), а не git commit -a.

ответил Kaz 1 Mayam12 2012, 02:45:12
3

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

Вот связанный с этим вопрос, связанный с целью передачи сообщений: Почему Должен ли я писать коммандное сообщение

ответил hfitzwater 1 Mayam12 2012, 00:03:06
3

Я всегда фиксирую содержательное сообщение об изменениях, и я делаю это часто с инкрементальными изменениями.

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

ответил Glenn Nelson 1 Mayam12 2012, 00:03:35
3

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

ответил Malcolm 1 Mayam12 2012, 03:54:51

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132