所有远程设备的全局Git配置属性

所有远程设备的全局Git配置属性,git,config,gerrit,git-config,Git,Config,Gerrit,Git Config,我想知道这是否可能,如果可能,如何配置它 在工作中,我们利用git存储库。我们有一堆存储库,然后使用gerrit进行代码审查。我们在每个存储库中都有一系列分支。我们利用.git/config文件来指示特定的属性,例如“receivepack”,以调用属性,例如用于代码评审的--reviewer。对于每个存储库中的每个远程分支,这一特定部分都会重复,并且在每个存储库中都是相同的。每次我们有了新的团队成员,我们都要更新一切。有没有一种方法可以让这个调用成为一个全局属性,或者足够动态地在一个位置更新它

我想知道这是否可能,如果可能,如何配置它

在工作中,我们利用git存储库。我们有一堆存储库,然后使用gerrit进行代码审查。我们在每个存储库中都有一系列分支。我们利用.git/config文件来指示特定的属性,例如“receivepack”,以调用属性,例如用于代码评审的--reviewer。对于每个存储库中的每个远程分支,这一特定部分都会重复,并且在每个存储库中都是相同的。每次我们有了新的团队成员,我们都要更新一切。有没有一种方法可以让这个调用成为一个全局属性,或者足够动态地在一个位置更新它,并让.git/config在推送时将其下拉

下面是我们正在使用的配置文件的示例。“远程”分支在我们拥有的每个git存储库中都会重复,在大多数存储库中,有许多远程分支迫使我们修改几十个位置的几十个电子邮件地址,以保持最新

[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
hideDotFiles = dotGitOnly
[remote "origin"]
    url = ssh://gerrit/repo1
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master
[branch "int"]
    remote = origin
    merge = refs/heads/int

[remote "gerrit"]
    url = ssh://gerrit/repo1
    receivepack = git receive-pack --reviewer=person@email.com --reviewer=personagain@email.com --reviewer=etc@email.com 
    push = HEAD:refs/for/int

是否可以使用别名来解决此问题?这将是一个理想的场景,在维护和开销方面可能是最干净的。

您能否提供一个包含您所描述的配置的示例
.git/config
文件?为什么必须在新的团队成员上更新它?在~/.gitconfig文件中更新它怎么样?由于所有全局属性都是在这里定义的。将其添加到~/.gitconfig的语法是什么?我希望能够在单个位置更新它,但主要是“receivepack”部分,因为这是唯一更新的部分。我想我可以添加一个别名,用“receivepack”函数执行提交?我只是对最好的方法感到困惑。有人知道一个合法的方法来实现这一点吗?例如,如果我要为“push”使用别名,我可以使用“push custom”的别名,然后让它执行push receivepack=blah,然后当我转到push时,我可以执行git push custom gerrit吗?还是有更好的方法?