Как да премахнете ангажира от произхода

Един истински случай. Един предприемач се е сляла с три клон майстор task5 в задача и се изпраща на хранилището в произход / майстор. 3 дни по-късно друг разработчик започва подготовка за освобождаването, е този клон на съветника и разбира, че този помощник клон task5 не може да ставам. Тези ангажира, които искате да премахнете, и task5 клон върне за преразглеждане.

Navali Git тласък -f

Всичко се усложнява от факта, че се намира в task5 съветника в продължение на 3 дни и други разработчици могат да актуализират техните местни майстори и да получите този злощастен task5 на господаря си и новосъздадената си клон, издънка на съветника. Това означава, че ако просто премахнете ангажира и пренаписване на историята чрез Git тласък -f. След това всеки един предприемач, който има podsosal ги промените отново бутам към сървъра, без да го знаят.

Нека Git отменянето

Плюс това, както писах по-горе, има сливане-ангажират, която също трябва да бъде отменена. А сливане-ангажират е известно да има двама родители, и се ангажират не може просто да отмените Git върне команда. като нормална ангажират. Трябва изрично да ви кажа какво е родител искаме да отмените:

И финес тук е, че ако предприемачът източване отрасли позволи на някои конфликти, за да се откажете от обединяването на тези конфликти трябва да се решават в обратен ред. В резултат на това няколко часа по-късно, аз не успяват да използват Git се върне към десния клон на държавата, през цялото време имаше някои различия.

В крайна сметка, че е било намерено да подбере. На първо място, ние все още замени капитана:

След това, всички клонове на всички разработчиците, които съдържат ангажира task5 нужда да се пресъздаде. Всеки разработчик актуализира преиздаването на капитана: Git донесе

Има списък на ангажира в техния бранш:

След това, ние намираме се ангажира, които направиха предприемачът в сегашната власт (първите три ангажират в нашата ситуация ще task5 на клонове) и да ги прехвърляте на отделен клон.

допълнително

Получаване на списък с отрасли, които трябва да бъдат актуализирани (като списък от хешове на ангажира, от които можем да се отървете):

Списъкът на ангажира в текущата клон разделени с интервал:

Недостатъците на този метод са, че тя трябва да се прави всеки разработчик с всички свои клонове. Ако някой не го прави, или ще пропусне бранша, а след това по-късно безопасно набута промени капитанът.