暫時從git取消跟蹤文件

我在機器上設置了本地git。 初始化git時,我添加了預編譯的庫和二進制文件。 可是,如今在開發過程當中,我不想間歇性地檢入那些文件。 我不想從倉庫中刪除這些文件。 在我完成開發以前,是否有任何方法能夠不跟蹤這些文件。 (我認爲我不能使用.gitignore,由於它僅適用於不在git中的那些文件。我想暫時禁用對文件的跟蹤。) git


#1樓

git書在第2.4節「作事」中提到了這一點。 基本上,您要作的就是將某些文件的索引狀態重置爲HEAD狀態,即最新簽出(或提交)的狀態。 撤消將文件暫存到當前索引。 此任務的命令是git reset 。[1]。 工具

所以,您必須執行的命令是: ui

git reset HEAD /path/to/file

在執行git status時,較新版本的git(我相信從1.6左右開始)會將此命令(以及更多內容)做爲提示。 這些版本很是用戶友好。 我的提示:若是您僅暫存幾個文件,請使用git add -i 。 這將啓動交互式登臺工具,使事情變得特別容易。 另外,我強烈建議您閱讀本書,由於這在實際狀況中很是明確地介紹了git的用法。 spa

[1] http://www.git-scm.com/book code


#2樓

我假設你是問如何刪除全部文件在生成文件夾或bin文件夾,而不是分別選擇每一個文件。 遞歸

您可使用如下命令:

git rm -r -f /build\\*

確保您位於構建目錄的父目錄中。
該命令將遞歸「刪除」 bin /或build /文件夾中的全部文件。 用刪除一詞來表示git會僞裝那些文件被「刪除」,而這些文件將不會被跟蹤。 git確實將這些文件標記爲處於刪除模式。 索引

確保確保您的.gitignore準備好即將進行的提交。
文檔:git rm 開發


#3樓

您能夠在之後保持文件未跟蹤 文檔

git rm -r --cached <file>

使用添加文件 get

git add -u

他們推進或作你想作的任何事情。


#4樓

不是原始問題的答案。 但這可能會幫助某人。

要查看您所作的更改( 知道哪些文件被標記爲--assume-unchanged

git ls-files -v

結果文件列表的前綴將帶有一個字符(例如:H或h),若是是小寫字母(即h),則文件標記爲--assume-unchanged


#5樓

使用如下命令取消跟蹤文件

git rm --cached <file path>
相關文章
相關標籤/搜索