Is the branch after "origin" the local branch or the remote branch?
I am trying to learn git but I am confused about one part. Usually I use:
git pull origin branch_A
to fetch the remote branch. Usually my current local branch is branch_A
the branch on the remote repository is also branch_A
, so I will get the remote/branch_A -> local/branch_A
. But what if I want to get remote/branch_B -> local/branch_A
what should I do? What is the real meaning of the branch after origin
. It means the remote branch or the local branch? Does this command mean fetch default remote branch to local branch_A
or fetch remote branch_A to current local branch
?
In the command
git pull origin branch_A
the origin
refers to the remote repository which you have configured in Git. So this will pull changes from the remote branch_A
into the local branch which is tracking this remote. On the other hand,
git pull origin/branch_A
will pull the changes from the local version of the origin/branch_A
branch which was cached last time you did a pull.
If you really want your local branch_A
to track remote branch_B
then the following command can do the trick:
git checkout -b branch_A origin/branch_B
If you already have a local branch_A
tracking something else (such as remote branch_A
) then you will have to kill the branch first and then recreate it.
The branch after the name of the repository is a remote branch.
It is what the doc says git-pull.
You allways pull over the branch that you are in your local repository.
However, there is another possibility, If you have a local branch tracked with a remote branch, then the command means that you will pull in your current branch what is in the remote branch that is pointed by your local branch tracked.
链接地址: http://www.djcxy.com/p/15836.html上一篇: 在CSS中使用透明背景RGBA背景