使用裸Git repo的推送失败

使用裸Git repo的推送失败,git,git-push,git-remote,git-bare,Git,Git Push,Git Remote,Git Bare,我有一个远程裸回购master和一个本地分支cloud,我已将其设置为跟踪它 git branch cloud -u amazon/master 但是 导致 致命:当前分支的上游分支不匹配 当前分支的名称 我尝试了a中建议的解决方案(我可以说,这是我在上面所做的),但它得到了相同的错误 我如何配置跟踪,以便仅凭git push就能推送到远程 我的配置的相关部分: [remote "amazon"] url = ssh://ubuntu@ecXXXXXXXX.us-west-2

我有一个远程裸回购
master
和一个本地分支
cloud
,我已将其设置为跟踪它

git branch cloud -u amazon/master
但是

导致

致命:当前分支的上游分支不匹配 当前分支的名称

我尝试了a中建议的解决方案(我可以说,这是我在上面所做的),但它得到了相同的错误

我如何配置跟踪,以便仅凭
git push
就能推送到远程


我的
配置的相关部分:

[remote "amazon"]
        url = ssh://ubuntu@ecXXXXXXXX.us-west-2.compute.amazonaws.com/home/ubuntu/mlcode.git
        fetch = +refs/heads/*:refs/remotes/amazon/*
[branch "cloud"]
        remote = amazon
        merge = refs/heads/master
运行

git config push.default upstream
会给你想要的行为

根据,版本2.0中的默认行为是

  • simple
    -在集中式工作流中,如果上游分支机构的名称与本地分支机构的名称不同,则可以像上游分支机构一样工作,增加安全性,拒绝推送

    当按下一个不同于您通常从中拔出的遥控器的遥控器时,以电流的方式工作。这是最安全的选择,适合初学者

相反,
上游
模式操作如下

  • 上游
    -将当前分支推回到其更改通常集成到当前分支的分支(称为
    @{上游}
    )。只有当您推送到通常从中提取的同一存储库(即,中心工作流)时,此模式才有意义
使用与您类似的存储库

$ git branch
* cloud
  master
我袖子里什么都没有

$ git config --unset push.default
尝试推送也会出现同样的错误。存在详细模式(
-v
),这样您就可以看到git在做什么

$ git push -v
fatal: The upstream branch of your current branch does not match
the name of your current branch.  To push to the upstream branch
on the remote, use

    git push amazon HEAD:master

To push to the branch of the same name on the remote, use

    git push amazon cloud

To choose either option permanently, see push.default in 'git help config'.
配置更改后

$ git config push.default upstream
你得到了问题中描述的行为

$ git push -v
Pushing to .../amazon/
To .../amazon/
 = [up to date]      cloud -> master
updating local tracking ref 'refs/remotes/amazon/master'
Everything up-to-date

git push
@ElpieKay之前,尝试
git-config-push.default-upstream
试试
git-push.default
git-config-help
@ElpieKay:我看不到任何关于“如何在这里工作”的信息。当分支名称不匹配时(您的分支与远程存储库中的分支)使用命令的“git-push-REPO-MYBRANCH:THEIRBRANCH”形式。
$ git push -v
Pushing to .../amazon/
To .../amazon/
 = [up to date]      cloud -> master
updating local tracking ref 'refs/remotes/amazon/master'
Everything up-to-date