Git config:私有远程网址

时间:2012-03-14 12:03:09

标签: git

如何覆盖.git / config中设置的[remote“origin”] url? 有时我需要使用https协议,我的用户名和密码作为网址的一部分,我不想提交此类信息。一种选择是忽略.git / config 有没有办法:
a)覆盖它(来自全局.gitconfig?)或
b)有一个本地.git / config但不必担心它可以被提交,或者 d)别名为git push https://privateurl master
c)让它以其他方式工作吗?

2 个答案:

答案 0 :(得分:3)

您可以在$ HOME / .gitconfig

中添加

例如

[url "https://git.host.com"]
      insteadOf = "git://git.host.com"

[url "ssh://user@git.host.com"]
    insteadOf = "git://git.host.com"

这将为ssh添加您的用户名。

[url "ssh://user@git.host.com"]
    insteadOf = "ssh://git.host.com"

答案 1 :(得分:1)

我认为你误解了Git是如何工作的。 .git目录中的文件存储Git需要运行的信息。这包括存储库信息(提交,对象,指针等)以及元信息(本地索引,本地首选项等)。 .git目录中的文件不存储在存储库中,因为它们基本上 存储库。元信息(例如.git / config中的设置)不会被推送到远程存储库。

有关.git目录的(简要)概述,请参阅Git社区手册中的this条目;有关进一步讨论,请参阅this question