有没有办法强制git
添加文件,尽管有.gitignore
个文件?
答案 0 :(得分:464)
请参阅man git-add
:
-f, --force
Allow adding otherwise ignored files.
所以运行这个
git add --force my/ignore/file.foo
答案 1 :(得分:10)
尽管DanielBöhmer的工作解决方案,Ohad Schneider在评论中提供了更好的解决方案:
如果文件通常被忽略,并且你强行添加它 - 将来可能会被意外地忽略(比如删除文件时,然后进行提交并重新创建文件。
你应该在.gitignore文件中取消它,就像那样: Unignore subdirectories of ignored directories in Git
答案 2 :(得分:1)
如果您忽略了目录的内容,如下所示:
/ignored_dir/* # ignore the **contents of** this dir!
然后你可以像这样取消忽略里面的文件或目录:
!/ignored_dir/special_file_to_include # Do NOT ignore this file--DO include it!
!/ignored_dir/special_dir_to_include/ # And do NOT ignore this dir--DO include it!
但是,如果您像这样直接忽略了“ignored_dir”:
/ignored_dir/ # ignore this directory **directly**
那么上面试图忽略某些文件或文件夹的 !
规则将不起作用!因此,在这种情况下,请从使用此样式:/ignored_dir/
切换到此样式:/ignored_dir/*
,然后添加如上所示的 !
规则以忽略该目录中的某些内容!
答案 3 :(得分:0)
实现它的另一种方法是临时编辑gitignore文件,添加文件然后恢复gitignore。我觉得有点hacky