所以配置了2个遥控器。
git@github.com:Anirudh/TestRepo.git
我制作了一个功能分支,没有预先配置远程,并且意外地将其推送到上游
git push upstream
现在分支机构在UPSTREAM上,这是不受欢迎的,所以我想把它推到原点并删除上游的分支
最安全的方法是什么?
答案 0 :(得分:2)
它比你想象的要简单得多:
# create a new branch with the desired name:
git checkout -b <branch name>
# push the desired branch
git push origin <branch name>
# delete the wrong branch from upstream
git push upstream --delete <branch to delete>
作为最佳做法,您应始终添加所需的分支名称以进行拉/推。阅读原因。
这是git v2.0发行说明,它解释了git处理推送方式的变化(简单与匹配)。这已在git v2.0中更新,以修复默认的git push
行为。
在git v2.0执行git push
之前,它会推送所有已更改的分支(所有,而不仅仅是当前分支)。
Git v2.0发行说明
向后兼容性说明
当
git push [$there]
没有说要推送什么时,我们已经使用了 到目前为止传统的matching
语义(所有分支都已发送 只要已经存在同名分支,就可以到远程控制台 在那边)。在Git 2.0中,默认值现在是simple
语义, 推动:
只有当前分支到同名的分支,并且只有 当前分支设置为与该远程集成时 分支,如果你正在推送到同一个遥控器;或
只有当前分支到具有相同名称的分支,如果您 正在推送到一个不是你常去的地方的遥控器。
您可以使用配置变量
push.default
进行更改 这个。如果你是一个想要继续使用的老人matching
语义,您可以将变量设置为matching
例。阅读文档以了解其他可能性。强文