【发布时间】:2021-08-18 09:57:12
【问题描述】:
我知道我可以在目录中创建 .gitignore 文件,然后将目录和这些文件添加到项目中。然而:
-
有没有办法在不包含文件的情况下添加目录?
-
有没有一种方法可以在创建新文件和/或目录时自动添加它们,而不是运行
git add命令?- 显然不是,但可以通过编程方式添加文件、添加提交消息并将所有内容推送到单个脚本中How can I stage and commit all files, including newly added files, using a single command?
【问题讨论】:
-
“有没有办法在不包含文件的情况下添加目录” 不,Git 对目录一无所知。提交只包含带有路径名的文件。
-
有一个技巧可以用来存储一个空目录:使用the empty-repository submodule。 (我真的不建议使用它;
.gitignore或.gitkeep空文件通常是一个更好的主意。) -
@torek 看起来像是将目录更改为子模块,这在复杂性方面似乎有点矫枉过正,但感谢您指出这个选项。
-
似乎有点矫枉过正 这是我不推荐它的原因之一。子模块通常很痛苦。如果 Git 的索引可以存储目录条目,那么 Git 可以在提交中存储空目录;那会更好。
标签: git