我有一個帶有文件Hello.java
的存儲庫。 當我編譯它時,會生成一個附加的Hello.class
文件。 java
我在.gitignore
文件中爲Hello.class
建立了一個條目。 可是,該文件彷佛仍被跟蹤。 git
如何使Git忽略Hello.class
? svn
您能夠使用如下方法忽略/不忽略跟蹤文件中的更改。 ui
git update-index --assume-unchanged <file>
git update-index --no-assume-unchanged <file>
如何忽略新文件 spa
全球範圍 code
將要添加到您的文件的路徑添加到.gitignore
文件中(並提交)。 這些文件條目也將適用於其餘簽出存儲庫的人。 xml
在本地 圖片
將您要忽略的路徑添加到您的.git/info/exclude
文件中。 這些文件條目僅適用於本地工做副本。 ip
如何忽略更改的文件(臨時) cmd
爲了忽略已更改的文件被列爲已修改文件,能夠使用如下git命令:
git update-index --assume-unchanged <file>
要恢復該無知狀態,請使用如下命令:
git update-index --no-assume-unchanged <file>
1)建立一個.gitignore
文件。 爲此,您只需建立一個.txt
文件並更改擴展名,以下所示:
而後,您必須更更名稱,在cmd窗口中編寫如下行:
rename git.txt .gitignore
git.txt
是您剛建立的文件的名稱。
而後,您能夠打開文件並將全部不想添加的文件寫到存儲庫中。 例如,個人看起來像這樣:
#OS junk files [Tt]humbs.db *.DS_Store #Visual Studio files *.[Oo]bj *.user *.aps *.pch *.vspscc *.vssscc *_i.c *_p.c *.ncb *.suo *.tlb *.tlh *.bak *.[Cc]ache *.ilk *.log *.lib *.sbr *.sdf *.pyc *.xml ipch/ obj/ [Bb]in [Dd]ebug*/ [Rr]elease*/ Ankh.NoLoad #Tooling _ReSharper*/ *.resharper [Tt]est[Rr]esult* #Project files [Bb]uild/ #Subversion files .svn # Office Temp Files ~$*
一旦有了它,就須要將其添加到您的Git存儲庫中。 您必須將文件保存在存儲庫所在的位置。
而後,在Git Bash中,您必須編寫如下行:
git config --global core.excludesfile ~/.gitignore_global
若是存儲庫已經存在,那麼您必須執行如下操做:
git rm -r --cached .
git add .
git commit -m ".gitignore is now working"
若是第2步不起做用,則應編寫要添加的文件的整個路徑。
無視:
git update-index --assume-unchanged <path/to/file>
撤消忽略:
git update-index --no-assume-unchanged <path/to/file>
您還能夠使用.gitattributes(而不是.gitignore)來排除整個文件類型。 該文件很是不言自明,可是我將其內容粘貼在這裏以供參考。 注意最後一行(* .class二進制):
# Denote all files that are truly binary and should not be modified. *.png binary *.jpg binary *.gif binary *.ico binary *.mo binary *.pdf binary *.phar binary *.class binary