尽管有.gitignore文件但强制添加

时间:2011-11-04 08:06:24

标签: git gitignore

有没有办法强制git添加文件,尽管有.gitignore个文件?

4 个答案:

答案 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/*,然后添加如上所示的 ! 规则以忽略该目录中的某些内容!

参考:

  1. Unignore subdirectories of ignored directories in Git
  2. [我的 eRCaGuy_dotfiles 存储库,其中包含一个包含这些笔记和演示的示例 .gitignore 文件]:eRCaGuy_dotfiles/.gitignore

答案 3 :(得分:0)

实现它的另一种方法是临时编辑gitignore文件,添加文件然后恢复gitignore。我觉得有点hacky