2016-04-02 62 views
2

這是我的情況:墮落git合併,並回到未提交的工作

我忘了拉,我開始在我的項目上工作。今天早上我的工作與我上次在該存儲庫中的提交完全不同。

我正在做一個提交,並提示我拉,這是當我意識到我將有雪崩的無法解決的衝突。

我拉,我的項目現在都搞砸了。 有沒有辦法可以回到我在做拉之前做的工作?

不會恢復到我上次提交的狀態,因爲我會失去今天所做的所有工作,但只是隱藏所有的混亂並回到5分鐘前?

+0

也許你應該發佈'git status'的輸出,所以我們可以得到一個情況的概述。 –

+0

哦,你提交後沒有提示提示。這隻有在你推動時纔會發生。 –

+0

@BeatBolli我知道有衝突的文件。問題是他們很難解決。這就是爲什麼我想回到未提交的工作:/ – valerio0999

回答

2

首先,中止未完成的合併:

git merge --abort 

然後,撤消上次提交(即導致衝突的一個):

git reset HEAD^ 

這將使你在做的改變在工作樹中提交,所以你可以繼續編輯。

+0

git merge --abort工作!我現在回到今天早上我的工作。我應該git重置HEAD ^以及?你能解釋一下這部分嗎?我不想把這個搞砸:) – valerio0999

+0

你現在有三種可能:'git reset HEAD ^'只是撤消提交;添加更多的更改並執行'git commit --amend'來更改上次提交;或添加更多更改並單獨提交。 –

+0

'git reset HEAD ^'只是刪除提交,但保留了您在源代碼中提交的更改。 –