On Mon, Mar 21, 2016 at 1:28 PM, Jeff King <peff@xxxxxxxx> wrote: > On Mon, Mar 21, 2016 at 08:21:46PM +0000, Thomas Adam wrote: > >> Something I've seen a few times of late (although I doubt that's any >> indication that the code has changed in Git) is the reporting of >> branch-X being uptodate with origin/branch-X when it isn't. >> >> When does git check to see if branch-X has a remote tracking branch >> and that it has changes on it? Only, the output below is misleading: >> >> % git checkout master >> Switched to branch 'master' >> Your branch is up-to-date with 'fvwmorg/master'. >> >> [fvwm-cvs-to-git/docs]{10345}[0][master] % git pull >> remote: Counting objects: 26, done. >> remote: Compressing objects: 100% (12/12), done. >> remote: Total 26 (delta 18), reused 22 (delta 14), pack-reused 0 >> Unpacking objects: 100% (26/26), done. >> From github.com:fvwmorg/fvwm >> c029868..36cc898 master -> fvwmorg/master >> 4f0c7ec..36cc898 ta/git-docs -> fvwmorg/ta/git-docs >> Updating c029868..36cc898 >> Fast-forward >> [...] >> >> Clearly, it's obvious that "Your branch is up-to-date with >> 'fvwmorg/master'." is misleading. Note that in this case, there's no >> passwords or other hindrances to Git being able to work out that a >> branch is behind another. > > The message from checking is looking only at your local > refs/remotes/fvwmorg/master branch, which is essentially a cache of what > is in the actual remote repository. > > We never contact other repositories unless explicitly asked to by > fetch, pull, push, etc. If you want to have the most up-to-date value > without merging, you can just "git fetch" to update the tracking > branches. To elaborate on that: If you do "git fetch" instead of "git pull" and then followed by "git status" it should tell you something like: Your branch is behind 'origin/master' by 73 commits, and can be fast-forwarded. The origin/ (or in your case fvwmorg/) is a local "cache" on what we think the remote is at. the remote may change of course. Stefan > > -Peff > -- > 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 -- 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