前言

git和 svn不同,仅仅跟踪文件的变动,不跟踪目录。所以,一个空目录,如果里面没有文件,即便 git add 这个目录,另外在别处 check out 的时候,是没有这个空目录的。

只跟踪文件变化,不跟踪目录,这么设计是有原因的。但这会带来一些小麻烦。有时候,确实需要在代码仓库中保留某个空目录。比如测试时需要用到的空目录。下面来看看如何解决。

其实这里有两种情况:

一、目录是空的

这种情况下只需要在目录下创建.gitkeep文件,然后在项目的.gitignore中设置不忽略.gitkeep

.gitkeep 是一个约定俗成的文件名并不会带有特殊规则

二、目录中已经存在文件

那就需要首先在根目录中设置!.gitignore,然后在目标目录也创建一个.gitignore文件,并在文件中设置

*
!.gitignore

最新文章

  1. 求两圆相交部分面积(C++)
  2. Linux下获得系统时间的C语言实现
  3. Chrome 开发者工具的Timeline和Profiles提高Web应用程序的性能
  4. Html Agility Pack基础类介绍及运用
  5. SQL Server 数学函数 相关
  6. Web Service简单入门示例
  7. CentOS卸载原有旧版OPENJDK并安装SUNJDK解决方案
  8. VS2017 生成事件去除未修改项目
  9. 《HelloGitHub月刊》第 09 期
  10. scala 读取保存文件 去除字符特殊
  11. centos7.4 可远程可视化桌面安装
  12. opus代码解析
  13. CM记录-选择合适的硬件
  14. ASP.NET MVC提交一个较复杂对象至WCF Service
  15. SVM计算过程,对偶形式,核函数
  16. [ios]ios读写文件本地数据
  17. Apache 服务器认证 和重写
  18. SqlServer 查询死锁,杀死死锁进程*转载
  19. PAT 1069 微博转发抽奖(20)(代码+思路+测试点4)
  20. shell 本地接口自动化

热门文章

  1. AngularJS directive简述
  2. HDUj2612(两个起点找到最近的目的地)
  3. 给.sh文件添加可执行权限
  4. man syslog | col -b > syslog.txt
  5. Dialog 自定义使用1
  6. Activity--弹出底部窗口
  7. 关于UI性能优化
  8. 实现reentrantlock和读写锁
  9. c# Aspose.Words插入饼图PieChart
  10. super关键字主要有以下两种用途