有时候我们想保留一个目录在 Git 版本库上,但不需要其中的文件。如
log -- \ 1.log 2.log
而 Git 本身不允许全空目录提交至版本库,一个最好的办法是在目录下创建一个文件:
mkdir log && touch log/.gitkeep && git add log/.gitkeep
如此,问题可较完美解决。如有更好办法请指正。
问下 创建一个.gitkeep 文件和创建一个任意文件名的文件 (比如.empty) 的区别是什么?
#1 楼 @iBachue 没区别吧
#2 楼 @hooopo 既然没区别 我还是喜欢起名叫.empty,一看就懂
能否指定忽略哪个文件呢,应该可以的。
不过你要忽略的是所有的文件
所有文件都起一个自己用的后缀,然后忽略这个后缀,也是一个办法
@iBachue 效果上没区别,可能 .gitkeep 更惯用点,一目了然
.gitkeep
#7 楼 @thisiskun #3 楼 @iBachue #2 楼 @hooopo 经过实验,是没有区别的,.gitkeep 算是惯用法,正如 @thisiskun 所说。
@woaigithub 建议你回复时试一下,如果 忽略这个后缀是可以的话,根本不需要开这个话题嘛。
#8 楼 @lyfi2003 Gamfile 里面的*.gem 怎么解释呢,我也是猜的。
Very cool! That's all right! Thank you!
原来我的解决方式是创建一个 README 文件,其实都一样,只要空目录里有一个文件就行
前几天知道了这个 呵呵~~ 。你找到好的 mergetool 工具了吗?我使用 git mergetool,有时候会产生.orig 文件,不小心就会 push 上去~~
我的解决办法是
echo "*" > dest_dir/.gitignore git add dest_dir/.gitignore -f git commit -m "ignore dest_dir content"