Який найпростіший спосіб скасувати певний комітет, це:
- не в голові чи в голові
- Був висунутий на пульт.
Тому що, якщо це не остання фіксація,
git reset HEAD
не працює. І тому, що його відсунули на пульт,
git rebase -i
і
git rebase --onto
викличе певну проблему в пультах.
Більше того, я не хочу реально змінювати історію. Якщо був поганий код, він був там в історії і його можна побачити. Я просто хочу це зробити в робочій копії, і я не заперечую протизаконного злиття.
Іншими словами, що таке еквівалент Git наступних команд svn:
svn merge -r 303:295 http://svn.example.com/repos/calc/trunk
який видаляє всі зміни з 295 до 302 шляхом зворотного об'єднання всіх змін у цих редакціях як новий документ.
svn merge -c -302 ^/trunk
яка скасовує комісію 302, звичайно, додаючи ще один комітет, який зворотно об'єднує зміни з відповідним комітом.
Я подумав, що це повинна бути досить проста операція в Git і досить поширений випадок використання. У чому ще полягає атомний вчинок?
Ми проводимо поетапний аналіз, і все для того, щоб документи були абсолютно атомними, невже ви не зможете легко скасувати один або кілька цих атомних доручень?