我如何将一个空的目录(不包含文件)添加到一个Git存储库中?
当前回答
当您添加一个.gitignore 文件时,如果您将放置任何内容(您希望 Git 忽略),您可能希望添加一个单一行,只需一个星级 * 以确保您不会随机添加被忽略的内容。
其他回答
Jamie Flournoy的解决方案工作得很好. 这里有一个稍微改进的版本,以保持.htaccess :
# Ignore everything in this directory
*
# Except this file
!.gitignore
!.htaccess
使用此解决方案,您可以插入一个空的文件夹,例如 /log、 /tmp 或 /cache 并且文件夹将保持空白。
这个解决方案为我工作了。
1. 将.gitignore 文件添加到您的空白目录中:
*
*/
!.gitignore
* 忽略文件夹中的所有文件 */ 忽略子指南!.gitignore 包含.gitignore 文件
然后删除您的缓存,步行您的文件,承诺并按下:
git rm -r --cached .
git add . // or git stage .
git commit -m ".gitignore fix"
git push
当您添加一个.gitignore 文件时,如果您将放置任何内容(您希望 Git 忽略),您可能希望添加一个单一行,只需一个星级 * 以确保您不会随机添加被忽略的内容。
只需在您想要跟踪的空白目录中添加一个空白(没有内容).gitignore 文件。
例如,如果你想跟踪一个空的目录, /项目/内容/帖子,然后创建一个新的空的文件, /项目/内容/帖子/.gitignore
注意:.gitkeep 不是官方 Git 的部分:
此分類上一篇
没有办法 Git 跟踪目录,所以唯一的解决方案是在您想要 Git 跟踪的目录中添加一个位置持有者文件。
文件可以被命名并包含你想要的任何东西,但大多数人使用一个空白的文件称为.gitkeep (尽管有些人更喜欢VCS诊断的.keep)。
预定. 标记它作为一个隐藏的文件。
另一个想法是添加一个 README 文件,解释该目录将用于什么。
推荐文章
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- 如何在Python中获取当前执行文件的路径?
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?
- 撤销“git add <dir>”?
- 是否可以在不先签出整个存储库的情况下进行稀疏签出?