2015-01-22 4 views
2

Я использую разветвленное репо на GitHub и время от времени мне нужно объединить работу над реальным («восходящим») репо, как описано here.Слияние upstream-репо с -Squash

Я хотел бы, чтобы раздавить их изменения, как этого

git pull https://github.com/mixedinkey-opensource/MIKMIDI.git MIDIFiles --squash 

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

+0

Использование '--squash', скорее всего, увеличит вероятность возникновения конфликтов слияния, поскольку git должен использовать более ранний общий предок для последующих слияний. Я не вижу причин, почему вы захотите это сделать. Чего вы пытаетесь достичь? –

+1

@SvenMarnach, поскольку я работаю, основное репо продвигается десятками коммитов. Они будут совершать до и после того, что я делаю. Я хочу, чтобы моя история была чистой, поэтому я не путаю то, над чем я работаю. Захламленную историю Git трудно читать, и хотя я могу, вероятно, хорошо это сделать, это дополнительная проблема. Имеет ли это смысл? –

+0

Использование '--squash' на самом деле не делает историю вашей * ветки чище. Вы по-прежнему получаете один коммит для слияния. –

ответ

2

Even for subtree, a pull --squash can be troublesome

Эта команда больше используется на стороне интегратора, при слиянии с PR (Прицепные Request) филиал в исходный репозиторий (для того, чтобы получить только один фиксации).
Смотри, например, «Merging a PR (yours or contributors)»

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

Так что в вашем случае рекомендуется не использование сквош.

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