home | list info | list archive | date index | thread index

[OCLUG-Tech] what exactly does a "git fetch --dry-run" do?

  to demo "git fetch" as part of intro class, i decided to throw in an
example of adding a remote and doing "git fetch --dry-run", for which
the man page insists:

       --dry-run
           Show what would be done, without making any changes.

except it clearly *does* do something, in the sense of apparently
downloading all that content. certainly, i could see all the object
compression and downloading, and the object store was noticeably
larger after that command ran; predictably, though, none of the
branches of the remote i added were visible (yet).

  i ran the dry run fetch again, and it finished almost immediately,
so clearly even a "dry run" fetch really does all that fetching; it
just doesn't add that content to (i'm guessing) .git/refs/.

  after i do a proper "git fetch" on that remote, unsurprisingly, i
see all the branches from the remote. so why is it referred to as a
"dry run" when stuff is actually being fetched? that seems just a tad
misleading.

rday

-- 

========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                        http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================