如何忽略Git中的某些文件

我有一個帶有文件Hello.java的存儲庫。 當我編譯它時,會生成一個附加的Hello.class文件。 java

我在.gitignore文件中爲Hello.class建立了一個條目。 可是,該文件彷佛仍被跟蹤。 git

如何使Git忽略Hello.classsvn


#1樓

您能夠使用如下方法忽略/不忽略跟蹤文件中的更改。 ui

  1. 忽略: git update-index --assume-unchanged <file>
  2. 對於還原被忽略的文件: git update-index --no-assume-unchanged <file>

#2樓

如何忽略新文件 spa

全球範圍 code

將要添加到您的文件的路徑添加到.gitignore文件中(並提交)。 這些文件條目也將適用於其餘簽出存儲庫的人。 xml

在本地 圖片

將您要忽略的路徑添加到您的.git/info/exclude文件中。 這些文件條目僅適用於本地工做副本。 ip

如何忽略更改的文件(臨時) cmd

爲了忽略已更改的文件被列爲已修改文件,能夠使用如下git命令:

git update-index --assume-unchanged <file>

要恢復該無知狀態,請使用如下命令:

git update-index --no-assume-unchanged <file>

#3樓

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

若是存儲庫已經存在,那麼您必須執行如下操做:

  1. git rm -r --cached .
  2. git add .
  3. git commit -m ".gitignore is now working"

若是第2步不起做用,則應編寫要添加的文件的整個路徑。


#4樓

無視:

git update-index --assume-unchanged <path/to/file>

撤消忽略:

git update-index --no-assume-unchanged <path/to/file>

#5樓

您還能夠使用.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
相關文章
相關標籤/搜索