如何在一个用户帐户下有多个〜/ .gitconfig实例?

时间:2014-06-16 19:56:52

标签: git github version-control environment-variables tortoisegit

我需要在我的系统上安装git,其中GitHub和TortoiseGit都有自己独立的~/.gitconfig AKA全局.gitconfig文件。由于git的工作方式,似乎无论如何都没有这样做?

基本上我需要GitHub默认查看一个.gitconfig文件,这与我的实际GitHub帐户信息相同,然后TortoiseGit以某种方式默认为完全独立的.gitconfig文件,完全独立GitHubs的.gitconfig文件。

如果可以通过其他方式实现这一点,比如使用TortoiseGit替代方案,那也很好,只要它与TortoiseGit(免费)相同。

1 个答案:

答案 0 :(得分:0)

最新版本的git会在阅读$XDG_CONFIG_HOME/git/config之前阅读文件~/.gitconfig - 请参阅manpage of git-配置。

你可以单独使用一个git配置,例如~/project-bla/git/config,并在一个终端会话中运行export XDG_CONFIG_HOME=~/project-bla/。然后该会话将始终使用该配置。请注意,~/.gitconfig中的设置会覆盖这些设置,因此该文件只应包含适用于所有设置的设置。

但是,这只适用于命令行git;我不认为TortoiseGit有这样的选择。


但是,最简单的解决方案是只配置特定于存储库的配置文件中的所有内容(在mygitrepository1/.git/config下)。这些设置不会互相干扰。

唯一的缺点是您无法在某些存储库之间共享设置,但~/.gitconfig中的设置仅用于所有存储库,而repo配置仅 < / em>用于该存储库。如果你想要一个配置repos a,b,c,另一个用于repos c,d,e,那么你需要修改上面概述的解决方案。