3

我可以使用同步原点

git fetch origin

我在 master 分支上,origin 是一个裸仓库。

我也可以运行将更改推送到 github:

git push github  --all
git push github --tags

但是为什么不能将使用 git fetch origin 的最新提交推送到 github?

当我推送时,git 只是回复:一切都是最新的

这意味着实际上没有发生推送 :( 因为从 origin 获取的最新提交没有推送到 github,为什么?

// 这是本地镜像,我想把它推送到 github

[core]
        repositoryformatversion = 0
        filemode = true
        bare = true
[remote "origin"]
        fetch = +refs/*:refs/*
        mirror = true
        url = http://git.mirror.xxx.xx/xxx/root.git
[remote "github"]
        url = git@github.com:username/xxx.git
        fetch = +refs/heads/*:refs/remotes/github/*
4

1 回答 1

2

git fetch将获取所有远程跟踪分支origin

但是,如果这些新提交与您当前的本地分支无关,git push github则不会更新有关所述(已经是最新的)当前分支的任何内容。
(取决于当前的 git push 政策和你的 git 版本)

您可以尝试git push --mirror github, 以便将所有参考推送到 GitHub。
但是您首先需要从 github:获取git fetch github分支,以便您的本地存储库了解所述匹配分支。

于 2012-09-10T11:38:02.483 回答