有没有办法强制git添加一个文件,尽管.gitignore文件?
当前回答
如何取消忽略一些选择的内容(文件或文件夹)在一个被忽略的文件夹
如果你忽略了这样一个目录的内容:
/ignored_dir/* # ignore the **contents of** this dir!
然后你可以像这样UNignore里面的文件或目录:
!/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/*,然后添加您的!规则,如上面所示,以取消忽略目录中的某些内容!
引用:
在Git中取消忽略目录的子目录 [我的eRCaGuy_dotfiles repo与一个示例。gitignore文件包含这些注释和演示]:eRCaGuy_dotfiles/.gitignore
其他回答
参见man git-add:
-f, --force
Allow adding otherwise ignored files.
运行这个
git add --force my/ignore/file.foo
尽管Daniel Böhmer提出了可行的解决方案,但Ohad Schneider在评论中提供了一个更好的解决方案:
如果文件通常被忽略,并且您强制添加它-它可能在将来被意外地再次忽略(比如当文件被删除时,然后进行提交并重新创建文件。
你应该像这样在.gitignore文件中取消忽略它: 在Git中取消忽略目录的子目录
另一种实现方法是临时编辑gitignore文件,添加该文件,然后恢复gitignore。我觉得有点俗气
如何取消忽略一些选择的内容(文件或文件夹)在一个被忽略的文件夹
如果你忽略了这样一个目录的内容:
/ignored_dir/* # ignore the **contents of** this dir!
然后你可以像这样UNignore里面的文件或目录:
!/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/*,然后添加您的!规则,如上面所示,以取消忽略目录中的某些内容!
引用:
在Git中取消忽略目录的子目录 [我的eRCaGuy_dotfiles repo与一个示例。gitignore文件包含这些注释和演示]:eRCaGuy_dotfiles/.gitignore
推荐文章
- 撤消git平分错误
- 使用.gitconfig配置diff工具
- 如何配置Mac OS X术语,使git有颜色?
- Visual Studio Code: .git文件夹/文件隐藏
- “node_modules”文件夹应该包含在git存储库中吗
- 为什么git-rebase给了我合并冲突,而我所做的只是压缩提交?
- 当我试图推到原点时,为什么Git告诉我“没有这样的远程‘原点’”?
- 如何从远程分支中挑选?
- 如何查看一个分支中的哪些提交不在另一个分支中?
- 如何取消在github上的拉请求?
- HEAD和master的区别
- GIT克隆在windows中跨本地文件系统回购
- RPC失败;卷度传输已关闭,剩余未完成的读取数据
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 错误:您对以下文件的本地更改将被签出覆盖