Re: Qn about git pull and git fetch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sep 28, 2010, at 12:59 PM, suvayu ali wrote:

> If I have a remote tracking repository, and I do a `git pull
> origin master', the latest changes are merged into my currently
> checked out branch. But the references to the remote repo are not.

> This is not an inconvenience for me, just a little puzzling since the
> man page says git pull runs `git fetch' followed by `git mege'. Just
> out of curiosity, is there any reason for this choice?

`git pull origin master` does the following:
- `git fetch origin master` will fetch the master branch from remote
   origin into FETCH_HEAD
- `git merge` will then merge FETCH_HEAD into HEAD

It sounds like what you want is to get your branch as a tracking branch.
If you see the following in `git remote show origin`:

[...]
  Local branch configured for 'git pull':
    master merges with remote master
[...]

Then all you have to do is `git pull`.  It will update all tracking
branches for origin, then merge origin/master into master.  The command
`git pull origin master` is telling git to override whatever defaults it
has and merge the master branch from remote origin into your current HEAD.

Your branches should be set to track automatically but if they didn't for
some reason and are using v1.7.0 or newer, you can:

$ git branch --set-upstream master origin/next
Branch master set up to track remote branch next from origin.
$ git pull

If you're using git prior to v1.7.0, you can instead:

$ git config branch.master.remote origin
$ git config branch.master.merge refs/heads/master
$ git pull

(Note: You only have to use `git branch --set-upstream` or the `git
config ...` lines once, not before every pull.)

~~ Brian
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]