2013-02-27 109 views
3

我需要返回到上次提交狀態。我已經完成了Git Reset Hard,但是當我對代碼進行新的更改並嘗試提交時,我發現所有文件tahs我不想在回購中存在。Git - 如何返回上次提交併刪除所有未提交的文件?

如何進行重置,還可以刪除未提交的文件?

最好的問候,

+0

試試這個http://stackoverflow.com/questions/8903953/git-revert-last-commit-and-remove-it-from-history – Koenyn 2013-02-27 18:36:20

回答

4

git reset --hard會把你回到過去的承諾,失去您對已經被提交的文件所做的任何更改。

git clean -xdf將刪除您創建但尚未提交給git的所有文件和目錄。

運行這兩個應該會讓你回到一個乾淨的狀態。

+0

嗨,謝謝你的回覆。它不工作,文件在那裏。任何其他線索?最好的問候, – 2013-02-27 18:45:44

+1

'git clean -f'和'git status'的輸出是什麼? – Chronial 2013-02-28 00:28:11

1

git checkout -- .(在命令結尾處有一個點)將恢復工作目錄中的所有更改。

+0

嗨,感謝您的回覆,但它現在正在工作。 – 2013-02-27 18:46:20

0

如果你想刪除沒有被跟蹤,然後嘗試以下文件:

git add . 
git reset --hard 

我認爲有一個更合適的方式,但現在不能想起來。如果我這樣做會發布。

0

OK,你有:

  • git clean -x:刪除文件不在版本控制之下,包括忽略的文件
  • git reset --hard:轉到提到commmit,檢查出文件,就像它們都記錄在它

使用兩者應該給你你想要的,如果沒有,這是一個錯誤。