Git:子目录中的.gitignore

LastSecondsToLive

我正在尝试使用git管理我neoviminit.vim我想忽略除与init.vim相同的文件夹.gitignorekalisi.vim目录中的一个文件夹之外的所有内容

/bundle/vim-airline/autoload/airline/themes/

这是我目前的情况.gitignore

# Ignore everything
*

# Exceptions
!.gitinore
!init.vim

!bundle
bundle/*
!bundle/vim-airline
bundle/vim-airline/*
!bundle/vim-airline/autoload
bundle/vim-airline/autoload/*
!bundle/vim-airline/autoload/airline
bundle/vim-airline/autoload/airline/*
!bundle/vim-airline/autoload/airline/themes
bundle/vim-airline/autoload/airline/themes/*
!bundle/vim-airline/autoload/airline/themes/kalisi.vim

我对此的想法:

  • 忽略一切: *

  • 除此之外.gitignore!.gitgnore

  • init.vim在同一目录中:!init.vim

  • 也不要忽略文件夹bundle!bundle

  • 但是其中的所有内容: bundle/*

  • 除了文件夹vim-airline!vim-airline

我想你应该已经明白了...

但是,如果我git status现在执行,只会得到bundle/未跟踪的文件。我不应该得到kalisi.vim还是bundle/vim-airline/autoload/airline/themes/kalisi.vim

我希望有一种更优雅的坦率方式。我还听说过.gitignore在目录中放置多个,但是子目录都是具有它自己的项目,.gitignore这将产生大量工作,而只是不忽略权限.gitignore

我希望有人知道该怎么做,目前看来好像在bundle/跟踪目录,但不是我想要的内容...

正如我在“如何将不带点的文件(所有无扩展名的文件)添加到gitignore文件? ”中提到的那样,要记住一个规则.gitignore

如果排除该文件的父目录,则无法重新包含该文件。
:除非满足git 2.7+中的某些条件)

这意味着,当您排除所有内容(' *')时,必须/**/先将文件夹(' ')列入白名单,然后才能将文件列入白名单。

# Ignore everything
*

# Exceptions
!.gitinore
!init.vim
!/**/
!bundle/vim-airline/autoload/airline/themes/kalisi.vim

OP LastSecondsToLive竟拿出一个简单的方法:

我创建了一个提交,bundle/vim-airline/autoload/airline/themes/kalisi.vim然后又切换.gitignore回:* !.gitinore !init.vim忽略所有内容,但是由于bundle/vim-airline/autoload/airline/themes/kalisi.vim已经被跟踪,因此将来会跟踪更改。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Git:忽略文件,但不忽略目录中的子目录

来自分类Dev

从.gitignore中删除目录,以便git开始跟踪其中的更改

来自分类Dev

用gitignore排除特定的子目录

来自分类Dev

gitignore-现在忽略文件,但保留子目录

来自分类Dev

镜像SVN子目录中的git子目录

来自分类Dev

了解.gitignore并建立目录

来自分类Dev

在子目录之一中跟踪.gitignore文件的内容的确切影响是什么?

来自分类Dev

CtrlP:忽略git repo内子目录中的文件

来自分类Dev

gitignore否定目录但随后在子目录中重新包含文件的问题

来自分类Dev

如何从git仓库中的子目录安装Bower组件?

来自分类Dev

在许多存储库中复制的Git子目录

来自分类Dev

git ls-tree -rd在子目录中工作

来自分类Dev

Gitignore排除所有子目录中的某些文件

来自分类Dev

gitignore目录和子目录中的所有文件(特定文件类型)

来自分类Dev

忽略子目录中的gitignore文件

来自分类Dev

如何在子树子目录中“反转” gitignore文件模式?

来自分类Dev

gitignore不会忽略子目录中的文件

来自分类Dev

Git钩子目录

来自分类Dev

gitignore子目录的内容

来自分类Dev

Git拉动gitignore的问题

来自分类Dev

git-在子目录中查找目录

来自分类Dev

用gitignore排除特定的子目录

来自分类Dev

镜像SVN子目录中的git子目录

来自分类Dev

gitignore不应跟踪子目录中的文件,而应跟踪目录结构

来自分类Dev

.gitignore白名单中忽略的子目录

来自分类Dev

Git:子目录中的.gitignore

来自分类Dev

如何在Git的子目录中包含排除文件?

来自分类Dev

使用gitignore忽略子目录中的文件

来自分类Dev

出于结构原因,您可以将 .gitignore 放在像 config 这样的子目录而不是根目录中吗?

Related 相关文章

热门标签

归档