所以我們有一個develop分支,我們的特性分支是基于它的。
兩天前有人推送了一個錯誤的提交develop,但是我基于它的功能分支并且已經有很少的提交被推送到它。他們從develop分支中洗掉了不必要的提交,但它仍然保留在我的功能分支提交中。它看起來像這樣:
bad commit
\
o---o---X develop
\
X---o---o---o feature
\
bad commit
我需要做的是洗掉基于我的分支的提交,而是重新定位到它之前的提交。我是否使用git rebase --ior git rebase --onto,我不太確定。先感謝您!
uj5u.com熱心網友回復:
X要從分支中洗掉帶有提交 ID(哈希)的單個提交feature:
git rebase X feature --onto X~1
旁注:剛剛發生在您身上的事情是不贊成強制推動共享分支的原因。(有人強行推動develop創建此問題。)當您在共享分支上有錯誤提交時,通常的做法是恢復該提交,而不是重寫并強制推動。如果它被還原,你可以像往常一樣更新你的分支,也許:
git fetch
# then either:
git rebase origin/develop
# or
git merge origin/develop
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/518326.html
標籤:混帐GitLab
