Hi,

I've tried to skim through the archive, but I couldn't find anything
that describes what I'm seeing. Apologies if that's because I missed
something/used the wrong search terms, or this is an intentional
change in behaviour.

Using 2.18.0.547.g1d89318c48, git fetch behaves differently to 2.18.0.

The scenario in which I'm seeing a difference in behaviour is when
there are (by virtue of the state of my local git repo and the origin,
remote) pending objects, branch updates etc to fetch from the remote.

To compare, here is the output of git fetch -v using 2.18.0:

POST git-upload-pack (948 bytes)
remote: Counting objects: 8961, done
remote: Finding sources: 100% (9/9)
remote: Total 9 (delta 0), reused 6 (delta 0)
Unpacking objects: 100% (9/9), done.
>From https://go.googlesource.com/go
 = [up-to-date]            dev.boringcrypto        -> origin/dev.boringcrypto
 = [up-to-date]            dev.boringcrypto.go1.10 ->
origin/dev.boringcrypto.go1.10
 = [up-to-date]            dev.boringcrypto.go1.8  ->
origin/dev.boringcrypto.go1.8
 = [up-to-date]            dev.boringcrypto.go1.9  ->
origin/dev.boringcrypto.go1.9
 = [up-to-date]            dev.cc                  -> origin/dev.cc
 = [up-to-date]            dev.debug               -> origin/dev.debug
 = [up-to-date]            dev.garbage             -> origin/dev.garbage
 = [up-to-date]            dev.gcfe                -> origin/dev.gcfe
 = [up-to-date]            dev.inline              -> origin/dev.inline
 = [up-to-date]            dev.power64             -> origin/dev.power64
 = [up-to-date]            dev.ssa                 -> origin/dev.ssa
 = [up-to-date]            dev.tls                 -> origin/dev.tls
 = [up-to-date]            dev.typealias           -> origin/dev.typealias
   479da24aac..dce644d95b  master                  -> origin/master
 = [up-to-date]            release-branch.go1      -> origin/release-branch.go1
 = [up-to-date]            release-branch.go1.1    ->
origin/release-branch.go1.1
 = [up-to-date]            release-branch.go1.10   ->
origin/release-branch.go1.10
 = [up-to-date]            release-branch.go1.2    ->
origin/release-branch.go1.2
 = [up-to-date]            release-branch.go1.3    ->
origin/release-branch.go1.3
 = [up-to-date]            release-branch.go1.4    ->
origin/release-branch.go1.4
 = [up-to-date]            release-branch.go1.5    ->
origin/release-branch.go1.5
 = [up-to-date]            release-branch.go1.6    ->
origin/release-branch.go1.6
 = [up-to-date]            release-branch.go1.7    ->
origin/release-branch.go1.7
 = [up-to-date]            release-branch.go1.8    ->
origin/release-branch.go1.8
 = [up-to-date]            release-branch.go1.9    ->
origin/release-branch.go1.9
 = [up-to-date]            release-branch.r57      -> origin/release-branch.r57
 = [up-to-date]            release-branch.r58      -> origin/release-branch.r58
 = [up-to-date]            release-branch.r59      -> origin/release-branch.r59
 = [up-to-date]            release-branch.r60      -> origin/release-branch.r60

Notice the update to origin/master.

Here is the output of git fetch -v using 2.18.0.547.g1d89318c48:

POST git-upload-pack (964 bytes)
remote: Counting objects: 8961, done
remote: Finding sources: 100% (9/9)
remote: Total 9 (delta 0), reused 6 (delta 0)
Unpacking objects: 100% (9/9), done.
>From https://go.googlesource.com/go
 = [up-to-date]            dev.boringcrypto        -> origin/dev.boringcrypto
 = [up-to-date]            dev.boringcrypto.go1.10 ->
origin/dev.boringcrypto.go1.10
 = [up-to-date]            dev.boringcrypto.go1.8  ->
origin/dev.boringcrypto.go1.8
 = [up-to-date]            dev.boringcrypto.go1.9  ->
origin/dev.boringcrypto.go1.9
 = [up-to-date]            dev.cc                  -> origin/dev.cc
 = [up-to-date]            dev.debug               -> origin/dev.debug
 = [up-to-date]            dev.garbage             -> origin/dev.garbage
 = [up-to-date]            dev.gcfe                -> origin/dev.gcfe
 = [up-to-date]            dev.inline              -> origin/dev.inline
 = [up-to-date]            dev.power64             -> origin/dev.power64
 = [up-to-date]            dev.ssa                 -> origin/dev.ssa
 = [up-to-date]            dev.tls                 -> origin/dev.tls
 = [up-to-date]            dev.typealias           -> origin/dev.typealias
 = [up-to-date]            release-branch.go1      -> origin/release-branch.go1
 = [up-to-date]            release-branch.go1.1    ->
origin/release-branch.go1.1
 = [up-to-date]            release-branch.go1.10   ->
origin/release-branch.go1.10
 = [up-to-date]            release-branch.go1.2    ->
origin/release-branch.go1.2
 = [up-to-date]            release-branch.go1.3    ->
origin/release-branch.go1.3
 = [up-to-date]            release-branch.go1.4    ->
origin/release-branch.go1.4
 = [up-to-date]            release-branch.go1.5    ->
origin/release-branch.go1.5
 = [up-to-date]            release-branch.go1.6    ->
origin/release-branch.go1.6
 = [up-to-date]            release-branch.go1.7    ->
origin/release-branch.go1.7
 = [up-to-date]            release-branch.go1.8    ->
origin/release-branch.go1.8
 = [up-to-date]            release-branch.go1.9    ->
origin/release-branch.go1.9
 = [up-to-date]            release-branch.r57      -> origin/release-branch.r57
 = [up-to-date]            release-branch.r58      -> origin/release-branch.r58
 = [up-to-date]            release-branch.r59      -> origin/release-branch.r59
 = [up-to-date]            release-branch.r60      -> origin/release-branch.r60

Indeed only if I repeat git fetch with 2.18.0.547.g1d89318c48 do I see
the update to origin/master:

>From https://go.googlesource.com/go
 = [up-to-date]            dev.boringcrypto        -> origin/dev.boringcrypto
 = [up-to-date]            dev.boringcrypto.go1.10 ->
origin/dev.boringcrypto.go1.10
 = [up-to-date]            dev.boringcrypto.go1.8  ->
origin/dev.boringcrypto.go1.8
 = [up-to-date]            dev.boringcrypto.go1.9  ->
origin/dev.boringcrypto.go1.9
 = [up-to-date]            dev.cc                  -> origin/dev.cc
 = [up-to-date]            dev.debug               -> origin/dev.debug
 = [up-to-date]            dev.garbage             -> origin/dev.garbage
 = [up-to-date]            dev.gcfe                -> origin/dev.gcfe
 = [up-to-date]            dev.inline              -> origin/dev.inline
 = [up-to-date]            dev.power64             -> origin/dev.power64
 = [up-to-date]            dev.ssa                 -> origin/dev.ssa
 = [up-to-date]            dev.tls                 -> origin/dev.tls
 = [up-to-date]            dev.typealias           -> origin/dev.typealias
   479da24aac..dce644d95b  master                  -> origin/master
 = [up-to-date]            release-branch.go1      -> origin/release-branch.go1
 = [up-to-date]            release-branch.go1.1    ->
origin/release-branch.go1.1
 = [up-to-date]            release-branch.go1.10   ->
origin/release-branch.go1.10
 = [up-to-date]            release-branch.go1.2    ->
origin/release-branch.go1.2
 = [up-to-date]            release-branch.go1.3    ->
origin/release-branch.go1.3
 = [up-to-date]            release-branch.go1.4    ->
origin/release-branch.go1.4
 = [up-to-date]            release-branch.go1.5    ->
origin/release-branch.go1.5
 = [up-to-date]            release-branch.go1.6    ->
origin/release-branch.go1.6
 = [up-to-date]            release-branch.go1.7    ->
origin/release-branch.go1.7
 = [up-to-date]            release-branch.go1.8    ->
origin/release-branch.go1.8
 = [up-to-date]            release-branch.go1.9    ->
origin/release-branch.go1.9
 = [up-to-date]            release-branch.r57      -> origin/release-branch.r57
 = [up-to-date]            release-branch.r58      -> origin/release-branch.r58
 = [up-to-date]            release-branch.r59      -> origin/release-branch.r59
 = [up-to-date]            release-branch.r60      -> origin/release-branch.r60

Can someone help explain what's going on here?

Thanks,


Paul

Reply via email to