Git,在本地分支和远程之间工作

时间:2013-09-19 20:07:40

标签: git

我克隆了一个存储库并获得了一个主分支。从主人我创建了一个本地分支“abc”。 现在遥控器可能已经发展了。分支看起来像这样:

>git branch -a
* abc
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master
  1. 如何查看本地分支abc和remote之间的差异。
  2. 如何将远程更改合并到我当地的banch“abc”。
  3. 我可以将本地更改从“abc”直接推送到远程,或者我必须通过我当地的主人。

1 个答案:

答案 0 :(得分:3)

  1. git diff origin/master..abc表示原点的主人和你当地的abc之间的差异。请注意,这反映了本地存储库的状态,因此如果要确保远程的所有新更改都在那里,请先git fetch
  2. 一般git pull或更明确的git pull origin master。如果您想要提取到abc,您还可以git fetch首先将所有远程更改发送到本地存储库(作为远程分支),然后使用git merge origin/master手动合并。
  3. git push origin <targetbranch>。因此,如果要在遥控器上创建分支abc,请使用git push origin abc。如果要推送到原始主人,请使用git push origin master。如果遥控器无法快进,则会失败,在这种情况下,您需要使用--force明确推送。