Да предположим, че съм работил върху клон, наречен my-branch
, като от време на време обединявам ангажименти от master
, за да остана актуален. При някои сливания трябваше да разрешавам конфликти, което отнемаше време.
Сега приключих с my-branch
и искам да го пребазирам до един ангажимент върху master
. По време на повторното базиране ще трябва да разрешавам същите конфликти, което ще бъде досадно.
Но вече имам точното състояние, в което трябва да бъдат файловете, просто искам да изчистя хронологията. Така че най-бързият начин за пребазиране би бил:
- Превъртете назад, за да овладеете
- Направете файловете същите като в
my-branch
, но изхвърлете историята на записите. На този етап бих имал много необвързани промени. - Направете един ангажимент
Това възможно ли е?
РЕДАКТИРАНЕ: SO ми казва да обясня защо въпросът ми не е дубликат на този. Въпреки че отговорът с най-високо гласуване там би решил проблема ми, въпросът там е „как да смачкам ангажименти?“ и моят е "Знам как да смачквам ангажименти, как да го направя, без да се занимавам с конфликти?". Така че отговорът е същият, но не го намерих, когато търсих решението, преди да публикувам тук. Може би ако някой друг също знае за повторното базиране, но не знае за меките нулирания, ще намери решението тук.
git reset --soft
, е много по-популярен от този, базиран наgit rebase
. - person eftshift0   schedule 21.02.2019