0
我正在研究一個主題分支,我將其稱爲'主題'。一位同事將一些變化推到了一個名爲develop的共享分支上,我想將它引入主題分支。我想我會想推出一個合併提交似乎混亂。所以我執行了下面的命令:撤消共享歷史記錄的Git rebase
git checkout develop
git pull
git rebase topic develop
git checkout topic
git merge develop
我執行的git pull拉下了幾個變化,包括我想要的變化。我的git被配置爲在相關情況下總是重新綁定。
只有當我執行了所有的命令後,我意識到我已經改變了共享歷史並且搞砸了。我還沒有推動任何東西。撤消/修復上述問題的最佳方法是什麼?儘管事實上我的情況涉及改變共享歷史記錄,this會以一種安全的方式解決我的情況嗎?
是的,'git reflog'是你的朋友。實際上,它允許「回憶」以前放棄的任何提交(當然在某種程度上),因此您可以在最近發生的更改之前將分支機構置於狀態。 – user3159253 2014-09-11 10:09:44
是的,你可以獨立於彼此恢復你的分支。當然,結果應該仔細驗證,但技術上git分支只是指向某些提交鏈的提示的標籤,所以您可以自由地將特定分支指向通過'git reflog'發現的其他地方。 – user3159253 2014-09-11 10:12:34
我重置了 - 對rebase之前的提交,但是我試圖合併到開發主題分支中的提交仍然改變了它們的日期。它們最初是在2天前製作的,但他們的日期今天仍然說。這不會搞砸了嗎?推動這一點似乎並不安全。 – CalumMcCall 2014-09-11 10:22:06