有一个这样的文件结构:
-root
| .git
| .gitignore
| root-file.txt
| -home
| .gitkeep
| home-file.txt
文件内容.gitignore
:
/home/*
!/home/
!/home/.gitkeep
第一队: C:\root> git status
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: ../.gitignore
new file: ../.root_file
new file: .gitkeep
命令 [2] C:\root\home> git status
相应地输出相同的输出。
如何设置存储库或 git 本身,以便在 git 文件夹home
中时“看不到存储库”?
像这样做:C:\root\home> git status
fatal: not a git repository (or any of the parent directories): .git
可能吗?
在这里找到答案https://stackoverflow.com/questions/14046563/ignore-git-in-parent-directories-for-git-status-branch-etc。是否可以在 Windows 和每个单独的存储库上执行此操作
是的你可以。
您需要以
GIT_CEILING_DIRECTORIES
任何方式将环境变量设置为等于路径列表,类似于环境变量PATH
。在对链接的响应中,分隔符是一个冒号,这在 unix 中是习惯的,在 windows 中是一个分号 (;
)。重要的是,
.git
不会忽略指定文件夹的文件夹搜索,而是忽略其所有子文件夹。也就是说,如果你在 Windows 控制台中执行
然后在状态文件夹本身
home
中它将像现在一样工作,但在项目子文件夹中它已经显示这不是存储库。如果要做
你会得到它,因为它写在问题中。但与此同时,在与家相邻的所有子公园中,git 会确保您不在存储库中。