Гитиб помещает мои разветвленные коммиты в мою основную ветку. Это ожидаемое поведение? - PullRequest
2 голосов
/ 11 февраля 2020

Я немного поэкспериментировал с git ветвлением и одним конкретным набором команд, радикально изменившим внешний вид моих графиков.

Вопрос git, о котором идет речь, находится здесь: Ссылка на Github

Что тестировалось:

Посмотрите только на правую часть графика, последние 5 коммитов или около того.

  • Одна ветвь (branch1) расходится с мастером.
  • Впоследствии было 3 изменения в ветке 1.
  • Впоследствии было 1 изменение на мастере
  • Слияние было выполнено в филиале 1 с мастером, чтобы "идти в ногу с мастером" До сих пор график выглядел так, как ожидалось

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

То, что я ожидал Чтобы увидеть хороший график, как на скриншоте выше картинка

Что я получил Полное переписывание истории - коммиты, которые были сделаны в ветке, теперь отображаются в мастере.

Вопросы Есть это ожидаемое поведение? Переписывание истории было сделано с помощью слияния, и все мои коммиты branch1 теперь видны в мастере, чего я не хочу делать?

Могу ли я как-то отменить это и go к предыдущему этапу, чтобы увидеть хороший у меня были графики?

Graph changes after merge

EDIT1 Я начинаю думать, что это может быть просто ошибка представления github. Я вижу ветки коммитов на моей главной ветке, чего не должно быть - если кто-то не скажет мне, что это

1 Ответ

0 голосов
/ 11 февраля 2020

При слиянии использовалась быстрая перемотка вперед

Вместо этого я использую следующий код:

git merge --no-ff

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

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

...