如何将/.vim目录及其所有子目录添加到git存储库

时间:2016-02-07 23:27:26

标签: git vim

这是我的~/.gitignore文件:

# ignore everything
*
# don't ignore these files
!*.vimrc
!*.vim
!*.bashrc
!.gitignore

问题是.vim是一个目录,我想在它的git存储库中包含它(及其所有子文件夹);但是,它们并不包含在我当前的gitignore文件中。

我也试过这个:

# ignore everything
*
# don't ignore these files
!*.vimrc
!*.vim/
!*.bashrc
!.gitignore

和此:

# ignore everything
*
# don't ignore these files
!*.vimrc
!*.vim/*
!*.bashrc
!.gitignore

如何确保vim目录及其子目录包含在此git存储库中?

3 个答案:

答案 0 :(得分:2)

尝试!.vim/!.vim/**

https://git-scm.com/docs/gitignore有这个提示:

  

尾随"/**"匹配内部的所有内容。例如,“abc / **”匹配目录“abc”中的所有文件,相对于.gitignore文件的位置,具有无限深度。

答案 1 :(得分:1)

您始终可以使用-f标志将其添加到git

  

-f/--force

     

允许添加其他被忽略的文件。

git add -f .vim

答案 2 :(得分:1)

假设您的git版本晚于1.8.4,则以下内容应该适用于您的gitignore文件。

#ignore everything
*
#don't ignore these files
!*/
!.vim/**

*模式忽略包括父目录在内的所有,如果排除了父目录,则无法重新包含任何内容。

模式!*/重新包含所有目录,允许您使用双通配符!.vim/**重新包含.vim目录下的所有内容。

已经过测试,可以在git版本2.5.0下运行