2013-04-23 47 views
1

我在分支上做了一些愚蠢的修改。如何在沒有結帳的情況下讓git丟棄分支?

我可以刪除分支,沒問題。

但是我不能這樣做。

所以,我不希望這些變化了。

如果我commit,我checkout我的「好分行」,修改後的引用將成爲過去。

我希望不會發生。

我該如何正確地刪除和忽視這些變化?

回答

5

你可以做

git reset --hard 

它將恢復更改修改的文件。

此外,如果你想刪除所有未跟蹤文件和目錄,然後執行

git clean -fd 
1

運行

git checkout . 

然後切換到你想要的任何分支。

+0

這似乎是一個非常好的解決方案。這將檢查在哪裏? – MEM 2013-04-23 15:51:35

+0

它只會將更改恢復到最新的提交。 – Headshota 2013-04-23 15:52:16

+1

'git checkout .'不起作用,如果你已經進行了更改(分階段更改保持不變) – tessi 2013-04-23 15:54:49

1

執行以下操作,來獲得一個乾淨的狀態,並刪除你的分支:

git reset --hard # resets git staging and your tracked files to the last commit 
git clean -fd # deletes untracked files (this is optional) 
git checkout master 
git branch -D <branch to remove> 
0

您可以git reset --hard丟棄在樹枝上的所有電流變化(如果你有未跟蹤文件,你也可以做git clean -f)。

之後,您可以git checkout任何其他分支,然後刪除違規的分支。 (提交本身會保留在存儲庫中一段時間​​,但它們很難找到。)

相關問題