我想知道,因为我一直在寻找如何做到这一点,至少在这个社区。想知道如何在Git中更改Mac OS X Lion中的$ HOME目录。
换句话说,如何将我的全局用户设置保存在像git这样的文件夹中,而不是保存在主用户文件夹中?或者它已经是那样了?我基本上想要为我在Git中使用的所有文件和内容保留一个集中的位置(例如, .gitmessage.txt 文件,如果我没有弄错的话,这不应该被隐藏因为它是TXT文件。)
如果您需要更多信息,请不要犹豫。
答案 0 :(得分:4)
阅读git config手册,其中说明了GIT_CONFIG
环境变量。
答案 1 :(得分:2)
如果你想使用另一个.gitconfig
文件,你只能通过更改当前shell及其子项的$HOME
变量来实现。
与其他回复所指出的相反 - Git将始终阅读位于$HOME/.gitconfig
的文件 - 无论您如何设置GIT_CONFIG
。
自2011年以来文档不正确并且仍然不正确,GIT_CONFIG
被忽略。
可以在此git mailing list thread中找到有关忽略原因的详细信息。
通过重新定义HOME
变量,可以更改主目录的位置,您可以使用以下(Bash)代码段执行此操作:
export HOME=<directory containing your alternate .gitconfig file)
这样做不会完全无痛,各种事情都会搞砸,例如shell初始化文件,编辑器配置和历史文件,shell历史文件等。
如果您能够应对上述限制,那么这可能是一种可接受的解决方案。
截至2016年9月29日 - 由Junio C Hamano(Git maintainer)提供patch has been submitted,它将允许通过一个新变量覆盖全局/etc/gitconfig
文件:GIT_CONFIG_SYSTEM_PATH
- 此补丁不是但是如果被接受,那么预计它将在2018/2019年左右进入主流Linux发行版。
我发现在docker容器中构建软件并提供.gitconfig
文件是一种合理运行的方法(在没有更好的解决方案的情况下)但这可能并不符合每个人的口味,可能比必要的。
答案 2 :(得分:0)
好的,这就是我这样做的方式......它非常简单。
<强>首先,强> git首次加载时输入&#34; cd~&#34; (这会将您带到根目录)
<强>其次,强> 输入&#34; cd path / path / path&#34; (您想要作为主目录的目录的路径)
<强>第三,强> 一旦你在你想要的目录... ... 输入&#34;别名home =&#34;路径/路径/路径&#34; (您想要的目录)
现在,每次Git加载时,您只需输入&#34; 主页&#34;,因为这是别名&#34; 主页 &#34;它将进入您要使用的目录的路径。你必须记得键入&#34; cd~&#34;当Git第一次加载到你的根目录...然后这个别名将起作用,否则它将无法识别来自另一个目录的路径。
无论代码问题是什么,这都是最简单,最可靠的方法。只需制作别名,然后&#34; cd~&#34;当Git加载以确保您在根目录中。每次Git加载时,您都会键入&#34; cd~&#34;,然后键入&#34; home&#34;。这是我发现的最简单方法......希望有所帮助。
如果你要在多个目录中工作也很好,因为你可以为每个路径/路径/路径/路径制作不同的别名,它会为你节省时间蹦蹦跳跳,你只需要&#34; cd~&#34;到达root,然后键入您选择的别名。