如果我错误地推动本地分支掌握会发生什么

Kev*_*vin 3 git

我错误地发出了命令,我现在犯了一个错误:

   git push origin master
Run Code Online (Sandbox Code Playgroud)

在当地的一个分支上,比如,mybranch.此分支从master分支,包含master没有的一些本地更改.

我收到的消息是:

   Everything up-to-date
Run Code Online (Sandbox Code Playgroud)

我检查了主日志没有异常.我的问题是:

  1. 我弄乱了主干吗?
  2. 为什么即使mybranch包含master没有的东西,它也会说"Everything up-date"?

谢谢.

ase*_*max 8

如果未指定源(本地)和目标(远程)分支,请push使用指定的规范作为源和目标.所以,基本上,当你这样做的时候

git push origin master
Run Code Online (Sandbox Code Playgroud)

您只需将本地主分支推送到远程主分支.

要实际将你的分支推入掌握,你应该这样做

git push origin mybranch:master
Run Code Online (Sandbox Code Playgroud)

  • 是的,这就是命令的工作原理.如果你没有指定refspec,它使用当前分支作为源和目标,如果你指定一个refspec,它会使用它,最后你可以使用<src>:<dest>来完全识别从哪里到哪里推应该是. (3认同)