git 忽略太多文件
git ignores too many files
我有文件结构:
$ ls xtest/
arch.gz.keep
raq.gz.keep
qq
$ ls xtest/qq/
ww.gz.gitkeep
aa.keep
我的.gitignore
/xtest/*
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
git status
未跟踪的文件:
xtest/.gitkeep
xtest/.keep
xtest/arch.gz.keep
对我来说,我还需要取消跟踪:
xtest/qq/ww.gz.gitkeep
xtest/qq/aa.keep
git --version
1.9.1
on Ubuntu 14.04
在 qq
文件夹中,如果它只有 ww.gz.gitkeep
和 aa.keep
或者您希望 qq
文件夹中的所有文件都由 git 控制版本,只需删除 .gitignore
中的 /xtest/*
,因此 .gitignore
看起来像:
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
通过在您的 .gitignore
中添加 /xtest/*
,您是在指示 Git 忽略 xtest/qq
。它永远不会进入该目录,也永远不会注意到有一些您不想忽略的匹配 *.keep
的文件。添加其中之一,以便 xtest/qq
不被忽略:
!/xtest/qq/
!/xtest/*/
即后者un-ignores中的所有目录xtest
,前者仅qq
.
我找到了解决方案,关键是我想忽略每个 file/path
从目录 'xtest' -> '/xtest/' 开始
除了一些放在 /xtest/ 中任何地方的文件
How do I add files without dots in them (all extension-less files) to the gitignore file?
也许对某些人会有所帮助:
要忽略目录 /xtest/
中的任何文件,但不忽略任何目录和某些特定文件:
/xtest/**/*
!/xtest/**/*/
/xtest/**/cache/*
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
cache/ 的子目录将始终被忽略,即使有 *.keep、*.gitkeep 等但不会在第一深度被忽略到 cache/ 并且几乎所有文件将在其他目录中被忽略(进入 /xtest /) 除了 *.keep、*.gitkeep 等
我有文件结构:
$ ls xtest/
arch.gz.keep
raq.gz.keep
qq
$ ls xtest/qq/
ww.gz.gitkeep
aa.keep
我的.gitignore
/xtest/*
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
git status
未跟踪的文件:
xtest/.gitkeep
xtest/.keep
xtest/arch.gz.keep
对我来说,我还需要取消跟踪:
xtest/qq/ww.gz.gitkeep
xtest/qq/aa.keep
git --version
1.9.1
on Ubuntu 14.04
在 qq
文件夹中,如果它只有 ww.gz.gitkeep
和 aa.keep
或者您希望 qq
文件夹中的所有文件都由 git 控制版本,只需删除 .gitignore
中的 /xtest/*
,因此 .gitignore
看起来像:
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
通过在您的 .gitignore
中添加 /xtest/*
,您是在指示 Git 忽略 xtest/qq
。它永远不会进入该目录,也永远不会注意到有一些您不想忽略的匹配 *.keep
的文件。添加其中之一,以便 xtest/qq
不被忽略:
!/xtest/qq/
!/xtest/*/
即后者un-ignores中的所有目录xtest
,前者仅qq
.
我找到了解决方案,关键是我想忽略每个 file/path 从目录 'xtest' -> '/xtest/' 开始 除了一些放在 /xtest/ 中任何地方的文件 How do I add files without dots in them (all extension-less files) to the gitignore file?
也许对某些人会有所帮助:
要忽略目录 /xtest/
中的任何文件,但不忽略任何目录和某些特定文件:
/xtest/**/*
!/xtest/**/*/
/xtest/**/cache/*
*.sql
*.gz
*.zip
*.log
!*.keep
!*.gitkeep
!*.dist
!*.dist.*
cache/ 的子目录将始终被忽略,即使有 *.keep、*.gitkeep 等但不会在第一深度被忽略到 cache/ 并且几乎所有文件将在其他目录中被忽略(进入 /xtest /) 除了 *.keep、*.gitkeep 等