"Cannot rewrite branch(es) with a dirty working directory".
git的錯誤
我是新來的Git「不能用髒的工作目錄重寫分支(ES)」。
這個錯誤是什麼意思?我應該做什麼?
"Cannot rewrite branch(es) with a dirty working directory".
git的錯誤
我是新來的Git「不能用髒的工作目錄重寫分支(ES)」。
這個錯誤是什麼意思?我應該做什麼?
骯髒的工作目錄意味着您有未提交的分支更改。你可以提交或隱藏它們。藏匿只需使用:
git stash
,並以此來把你變回
git stash apply
幫助...謝謝! – jldupont 2010-01-08 20:31:36
請注意,您實際上可能沒有一個骯髒的工作目錄:在1.7.7.1之前的git中存在一個bug,這意味着運行'filter-branch'時git不會刷新其內部索引。因此,無論如何請嘗試運行這兩個命令 - 除非有人知道強制索引刷新的方式不太方便。 (關於[這個問題]的更多討論](http://stackoverflow.com/questions/6463963/git-filter-branch-says-working-tree-is-dirty-when-it-is-not)。) – 2012-05-16 11:04:31
從上面鏈接添加的註釋:'git update-index -q --ignore-submodules --refresh'應該更新索引! – 2012-05-16 15:17:14
這是我第一次混帳回購協議,我犯了一些不屬於......不得不糾正它。 – jldupont 2010-01-08 20:52:27
我遇到同樣的問題,並且我對git有經驗。如果我做'git filter-branch --subdirectory-filter somedir - --all',我最終會處理完整個repo,但是如果我做了'git filter-branch --tree-filter'rm somefile' - 在處理具有上述錯誤的第一個分支之後,它全部退出。爲什麼'filter-branch'保存'--subdirectory-filter'的狀態,但是如果'--tree-filter'改變目錄,停止? – 2011-10-12 19:24:05