将两个repo添加到git config中,如何在推送之后自动获取这两个repo?

将两个repo添加到git config中,如何在推送之后自动获取这两个repo?,git,Git,推送后,在[远程“全部”]中获取所有分支机构(通过分支机构-av检查两个回购之间的一致性)的好方法是什么?我对源站和备份都有一个取数,但它只取第一个 [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true ignorecase = true precomposeunicode = t

推送后,在
[远程“全部”]
中获取所有分支机构(通过
分支机构-av
检查两个回购之间的一致性)的好方法是什么?我对
源站
备份
都有一个取数,但它只取第一个

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
        ignorecase = true
        precomposeunicode = true
[remote "origin"]
        url = git@host:origin/repo.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[remote "backup"]
        url = git@host:backup/repo.git
        fetch = +refs/heads/*:refs/remotes/backup/*
[remote "all"]
        url = git@host:origin/repo.git
        url = git@host:backup/repo.git
        fetch = +refs/heads/*:refs/remotes/origin/*
        fetch = +refs/heads/*:refs/remotes/backup/*
[branch "master"]
        remote = all
        merge = refs/heads/master

我目前的做法是键入
git push all[branch]
,然后键入
git fetch all
,因为它自动抓取的唯一抓取是
[remote“all”]
中列出的第一次回购(即使我都列出了)。

对于
fetch
您不能这样做。(你可以通过
push
,但我还是建议你不要这样做。如果你想保留你的
all
,我至少建议将
url
设置为无效,并通过
pushurl
设置推送url,尽管我承认我从未测试过这种设置。)

相反,您可以而且应该做的是声明多个远程(如您所做的,远程
源站
和远程
备份
),然后声明一个远程组,如中所述。默认组名为
default
,如果未定义一个组,
git remote update
默认自动查找所有远程,仅跳过配置了特殊“我不在默认设置中”标志的远程


因此,只需删除
all
repo,而不是运行
git-fetch
,而是运行
git-remoteupdate
(或
git-fetch-all
)。(或者把
all
放在那里推,但我的强迫症仍然说“不要那样做”:-)

你不能为
获取
这样做。(你可以通过
push
,但我还是建议你不要这样做。如果你想保留你的
all
,我至少建议将
url
设置为无效,并通过
pushurl
设置推送url,尽管我承认我从未测试过这种设置。)

相反,您可以而且应该做的是声明多个远程(如您所做的,远程
源站
和远程
备份
),然后声明一个远程组,如中所述。默认组名为
default
,如果未定义一个组,
git remote update
默认自动查找所有远程,仅跳过配置了特殊“我不在默认设置中”标志的远程

因此,只需删除
all
repo,而不是运行
git-fetch
,而是运行
git-remoteupdate
(或
git-fetch-all
)。(或者把
all
放在那里推,但我的强迫症仍然说“不要那样做”:-)