2012-04-15 3 views
8

Мне нравится совершать довольно часто (и даже случайным образом), когда я работаю над некоторым кодом, потому что, если я где-нибудь прикручусь, я всегда могу откатить свои изменения.git: как «консолидировать» локальные коммиты

Однако, когда я решаю направить все изменения в главный репозиторий, мне не нравятся люди, чтобы увидеть все случайные коммиты, потому что некоторые из них действительно бессмысленны для них, и это делает дерево изменений излишне длинным ,

Как мне «консолидировать» все мои локальные коммиты, прежде чем нажимать?

+3

Правильный термин "давя" совершает. Это поможет вам найти ответ, который вы ищете. –

+2

Я не уверен на 100%, если это то, что вы делаете, но похоже, что вы можете развиваться на «master» (или независимо от того, какая главная ветвь для вас). Если это то, что происходит, то вы, вероятно, должны использовать ветвление, предпочитая подходы к переустановке, описанные ниже. См. Книгу Скотта Чакона: http://progit.org/book/ch3-4.html – msandiford

+0

^^ что он сказал. – oyalhi

ответ

2

Сделайте interactive rebase, который позволит вам переупорядочить, сквош и отредактировать, чтобы передать ваше сердце, прежде чем нажимать.

2

git rebase -i

интерактивный редактор будет предложено из.

Изменить все фиксации вы хотите объединить в «сквош»

Закройте редактор

+0

Обратите внимание, что вы также должны указать идентификатор фиксации последнего коммита _before_, который вы хотите скворовать: 'git rebase -i ' – mklement0

Смежные вопросы