Re: Your branch and 'origin/master' have diverged
From: Hilco Wijbenga <hidden>
Date: 2016-06-15 22:54:29
On 14 August 2012 13:12, Thomas Rast [off-list ref] wrote:
Hilco Wijbenga [off-list ref] writes:quoted
On 14 August 2012 10:19, Junio C Hamano [off-list ref] wrote:quoted
Hilco Wijbenga [off-list ref] writes:quoted
On 14 August 2012 01:27, Thomas Rast [off-list ref] wrote:quoted
[git pull with two args] it's ok if you use it with an URL instead of a remote nicknameWhy would that be okay? What is the difference? Isn't the nickname just an alias for a URL?As long as you tell what refspecs to use on the command line, the remote nickname behaves as "just an alias for a URL", so yes, because Thomas is discussing "two-arg pull or fetch", one arg being either nickname or URL and the other is an explicit refspec on the command line, it would be okay because there is no difference in that case.I suppose I'm not entirely clear on how this two step process is "safer". Doing "git fetch" would seem to be harmless, right? So the problem is with "git merge" but master should always be "behind" origin/master so that "git merge" should just FF to origin/master which *should* be completely safe. Does that make sense? Especially given our use of master as an integration branch? [Given the trouble I have with getting people to use Git properly, I prefer things as simple as possible. :-) ]I meant something else than Junio hinted at. Saying git fetch origin master # or by extension git pull origin master does not update the origin/* namespace, not even origin/master. All fetching happens only into FETCH_HEAD. This leads to confusion such as yours because origin/master and thus the upstream tracking displays will not know about the change.
I'll say. Now I'm really confused. If what you say is true then what is updating origin/master? I've been using "git pull" daily for over a year and origin/master is definitely getting updated (at least according to gitk). Mmm, just to make sure we are all talking about the same origin/master: I mean my local reference to the SHA1 of the commit that is master's HEAD on origin. After I have run "git pull", *my* master and *my* origin/master point to the same commit. Or I'm *really* confused. Or I've confused you by using incorrect terminology. :-) Or by using the right terminology incorrectly. ;-)