barbitoff programmer`s blog

Здесь я публикую заметки из программерской жизни: грабли, на которые мне случилось наступить, проблемы, для которых было найдено элегантное (или не очень) решение, а также все, с чем мне пришлось столкнуться и чем хотелось бы поделиться =)
PS Если хотите меня поблагодарить - на странице есть 3 места, чтобы это сделать =)

понедельник, 27 февраля 2012 г.

"Fast Forward Merge" в Git

Например, пусть у нас есть ветка master (на рисунках - фиолетовым цветом). Мы сделали branch, создав новую ветку mybranch (зеленым цветом), сделали в этой ветке некоторые изменения и делаем merge обратно (в ветке master делаем merge mybranch):
Если при этом между командами branch и merge ветка master не менялась, вместо того, чтобы сделать commit  в ветке master, Git просто переносит голову ветки master в голову ветки mybranch:
Это случился т.н. "Fast Forward Merge". Если мы хотим всё же сделать влив изменений в master именно commit`ом, чтобы создать красивую историю ветки maser, можно установить опцию --no-ff при выполнении merge. Тогда мы получим:
Однако такой подход не является хорошим тоном, почитать рекомендации можно в этой публикации: http://sandofsky.com/blog/git-workflow.html, спасибо огромное sandofsky за неё.

Комментариев нет:

Отправить комментарий