我合併了一個遠程分支到我的本地倉庫,並創建了26個本地提交。如何撤消Git中的上次本地提交併返回到遠程狀態?
現在,我想恢復這種合併,但它認爲將提交1還原爲1或尋找遠程版本的最後一次提交還原爲非常枯燥和錯誤敏感。
我經歷了How to undo last commit(s) in Git?這個帖子,它的答案很有意思,但是我沒有找到任何簡單的方法來做我的本地回覆。
任何人都可以幫忙嗎?
我合併了一個遠程分支到我的本地倉庫,並創建了26個本地提交。如何撤消Git中的上次本地提交併返回到遠程狀態?
現在,我想恢復這種合併,但它認爲將提交1還原爲1或尋找遠程版本的最後一次提交還原爲非常枯燥和錯誤敏感。
我經歷了How to undo last commit(s) in Git?這個帖子,它的答案很有意思,但是我沒有找到任何簡單的方法來做我的本地回覆。
任何人都可以幫忙嗎?
使用git登錄&的Git復位
git log
這會給你的消息,通過它可以識別您提交ID提交ID。
使用提交ID然後重置。
git reset <commit-id>
如果你永久想要回到那個提交。您可以使用以下內容。
git reset --hard <commit-id>
我試過一個或兩個東西,這個人是有點髒,但它很簡單,似乎工作:
git checkout -b tempo
git branch -D dirty_one
git checkout -b dirty_one origin/dirty_one
就是這樣。
我覺得很髒的東西是壞地方提交仍然在當地回購,但分支不知道他們,所以他們可能會保持隱藏。
如果我重做我的合併(我其實已經做了),合併只是工作很好,但我不知道究竟如何(即髒的部分...)
可以重置爲分行所以你可以通過'git reset --hard origin/master'來重新設置你最後一次與遠程設備通信的遠程主機。 –
@ LasseV.Karlsen可能認爲origin/master將具有相同的提交id,因爲OP沒有提到origin/master和本地分支同步。 – harshitpthk
好的,但我正在尋找一個解決方案,而不使用commid id,並且當我將**合併到**我的本地分支時,我的目的是回到這個確切分支的遠程狀態。所以感謝@Lasse V. Karlsen @「Lasse V. Karlsen」 – geekobi