Я сделал огромное слияние с идеей (intellij idea), поэтому, когда все conflicsts были разрешены, и som-код был изменен, и я выполнил (слияние) , то заметили, что есть два файла, которые нужно переделать. Поэтому я снова сделал.Git revert merge plus one commit on top для повторного слияния
Есть два questionss:
Почему я второй фиксации. Это потому, что IDE каким-то образом пропустила
added
commit to merge (ide not smart enought, чтобы увидеть, что все эти изменения в контексте одного слияния?). Это то, что произойдет, если я забылadd
файл вindex
, если я пойду с командной строкой после слияния (?)Как я мог вернуть эти двух коммитов, так что я мог бы сделать одно чистое слияние?
Как картинке:
[commit1] < - [Мегре фиксации] < - [перед тем фиксации] | (Мастер)
Я попытался git rebase -i rebase HEAD~2
(только первая идея объединить два коммиты), но показал все эти 121 commists - один commit1 и 120 от слияния фиксации.
В принципе, я хочу добавить «потерянный»/«отдельный» [commit1] в [merge-commit] и иметь одно слияние.
ОБНОВЛЕНИЕ: У меня нет моего кода, чтобы попробовать, но имеет ли это смысл?
// revert two commits to have one
1. git reset --soft HEAD~
2. git revert -m 1 merge-commit
3. git commit
Ожидаю, что снова увижу изменения, все эти 1 + 120 коммитов. Но как бы я сливаю
// move my merged stuff into new branch
4. git push origin -u new_branch
// move back on history in master branch
5. git reset --hard before-commit
6. git merge new_branch
7. git push -f origin master
Тогда этот мерзавец слияние new_branch будет идти без каких-либо конфликтов, так как я был слит настройками уже .. так что не может показать истинную (привет) истории, откуда он был слит с .. но по крайней мере конечный результат должен совпадать. Теоретически.
?
И это дети, поэтому с помощью интеграции в среде IDE Git всегда на свой страх и риск, и поэтому использование CLI почти всегда предпочтительнее. Вы ** можете ** уйти с интерактивной перестановкой, чтобы раздавить коммиты вместе (если вы еще не натолкнули свои фиксации). Однако убедитесь, что он работает с фиксацией слияния, потому что я не уверен. –
IDE только хорошо сочетается с слиянием, поэтому я вижу красивый pic, что было изменено и как. – ses
Я следую правилу «смотри, не трогай» с помощью любого графического интерфейса Git. –