How to ignore certain files in git?
我有一个存储库,其中有一个文件
我在
我想知道如何让git忽略
问题是,
如何忽略新文件
全球地
将要忽略的文件路径添加到.gitignore文件(并提交)。这些文件条目也适用于签出回购协议的其他人。
局部地
将要忽略的路径添加到.git/info/exclude文件中。这些文件条目只适用于您的本地工作副本。
如何忽略更改的文件(临时)
要忽略已更改的文件,将其列为"已修改",可以使用以下git命令:
1 | git update-index --assume-unchanged <file> |
要恢复这种无知,请使用以下命令:
1 | git update-index --no-assume-unchanged <file> |
将以下行添加到.gitignore:
1 | /Hello.class |
这将从git中排除hello.class。如果已提交,请运行以下命令:
1 | git rm Hello.class |
如果要从git中排除所有类文件,请将以下行添加到.gitignore:
1 | *.class |
1)创建一个
然后您必须更改名称,在命令上写下以下行:
1 | rename git.txt .gitignore |
其中
然后您可以打开该文件并写入不想添加到存储库中的所有文件。例如,我的如下所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | #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中,您必须编写以下行:
1 | git config --global core.excludesfile ~/.gitignore_global |
如果呼吸已经存在,则必须执行以下操作:
1 2 3 | 1)git rm -r --cached . 2)git add . 3)git commit -m".gitignore is now working" |
如果步骤2不起作用,则应编写要添加的文件的孔路径。
希望它有帮助!
忽视:
1 | git update-index --assume-unchanged <path/to/file> |
撤消忽略:
1 | git update-index --no-assume-unchanged <path/to/file> |
可以使用以下方法忽略/不忽略跟踪文件中的更改。
在.git所在的目录中创建一个
1 2 | *.o .*.swp |
你应该写些像
1 | *.class |
进入你的
从Github官方网站:
如果您已经签入了一个文件,并且希望忽略它,那么如果您稍后添加一个规则,git将不会忽略该文件。在这些情况下,您必须首先通过在终端中运行以下命令来取消对文件的跟踪:
1 | git rm --cached FILENAME |
或
1 | git rm --cached . |
添加到.gitignore,要忽略哪些文件
*类
*项目
*PREFS
*项目
通过创建.gitignore文件。有关详细信息,请参阅此处:Git Book-忽略文件
还有一个问题:如何让git忽略文件而不使用.git ignore?
还可以使用.gitattributes(而不是.gitignore)排除整个文件类型。这个文件很容易解释,但我把内容粘贴在这里以供参考。注意最后一行(*.class binary)
1 2 3 4 5 6 7 8 9 | # 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 |
使用.gitignore时,此网页可能会很有用并且节省时间。
它会自动为不同的IDE和操作系统生成.gitignore文件,这些文件具有您通常不希望拉到Git存储库的特定文件/文件夹(例如,特定于IDE的文件夹和配置文件)。
如果您已经提交了该文件,并且试图通过添加到.git ignore文件来忽略该文件,则git将不会首先忽略该文件,您必须执行以下操作
1 | git rm --cached FILENAME |
如果您是新启动的项目,并且希望向git ignore添加一些文件,请按照以下步骤创建git ignore文件
1 2 | 1. Navigate to your git Repo. 2. Enter"touch .gitignore" which will create a .gitignore file. |
将以下行添加到.git/info/exclude:Helo.C类
我对"dump.rdb"文件也有类似的问题。我尝试以各种方式将此文件添加到.gitignore文件,但只有一种方法有效。
Add your filename, at the end of .gitignore file
注意:在其他地方添加文件不起作用。
例如,请参见:https://gitlab.com/gitlab org/gitlab ce/raw/b3ad3f202478dd88a3cfe4461703bc3df1019f90/.gitignore
我试过
提交时,我手动从更改列表中删除文件
在我拉之前,我把更改过的文件藏起来。拉完后,我做了一个藏起来的爆竹。
步骤3有时会触发合并,并可能导致需要解决的冲突,这是一件好事。
这允许我保留不与团队中其他人共享的本地更改。