我创建了.gitignore_global文件并将其保存到我有.gitconfig文件的目录中.
之后,我使用了这个命令.
git config --global core.excludefile .gitignore_global
Run Code Online (Sandbox Code Playgroud)
然后我使用命令检查了我的.gitconfig文件
cat .gitconfig
Run Code Online (Sandbox Code Playgroud)
它显示了我的结果
[user]
email = hemant.parihar264@gmail.com
name = Hemant Parihar
[gui]
recentrepo = C:/Users/heman/gitprojects
recentrepo = E:/Inspiration/developerquery
[filter "lfs"]
clean = git-lfs clean %f
smudge = git-lfs smudge %f
required = true
[core]
excludesfile = .gitignore_global
Run Code Online (Sandbox Code Playgroud)
它清楚地显示了我在[核心]部分,有.gitignore file.但是在我的项目存储库中,我创建了一个文件,在配置.gitignore_global时应该忽略该文件.但这不应该发生.但是当我使用本地.gitignore文件到我的项目时,它工作正常并忽略了不应该跟踪的文件.
我的项目存储库目录是E:/ Inspiration/server/explore_california,而.gitignore_global在我的主目录中(其中存在.gitconfig文件.).
我检查了这个链接,但我没有找到任何有用的东西.
pok*_*oke 33
全局gitignore的路径必须是绝对的,因此您可以在此处使用shell扩展,并将其指定为~/.gitignore_global:
git config --global core.excludesfile ~/.gitignore_global
Run Code Online (Sandbox Code Playgroud)
为了理解如果你不使用绝对路径会发生什么,你必须了解git configs是如何工作的:每个存储库都有一个.git/config.此外,还有全球性的~/.gitconfig.合并两个位置的配置值(在发生冲突时优先使用本地存储库设置)以生成一组配置设置.您可以通过git config -l在本地存储库中运行来检查它们.
因此,配置始终是当前存储库的本地配置.因此,当您拥有"全局"排除文件的相对路径时,该路径将相对于您的存储库进行解释.
因此excludesfile = .gitignore_global,Git会查看本地存储库中的文件gitignore_global.它会使用它以及普通.gitignore和存储库.git/info/exclude.
所以你实际上可以将.gitignore_global文件放入每个存储库,Git会把它拿起来.
因此,既然您需要全局配置,则需要指定绝对路径.
| 归档时间: |
|
| 查看次数: |
6219 次 |
| 最近记录: |