Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH 10/10] push: teach push to be quiet if local ref is strict subset of remote ref

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:43:45

Junio C Hamano [off-list ref] writes:
 1. Error on the sending side.  The ref parameters given to
    git-push were bogus, or they were good commits but they were
    not fully connected to the commits the other side has
    (i.e. local repository corruption).  pack-objects will abort
    and no remote (nor local tracking ref that tracks what we
    pushed to the remote) would be updated.  This should be
    "most severe" in _any_ workflow, so I do not mind calling
    this "fatal".
By the way, as git-push allows an arbitrary SHA-1 on the left
hand side of a refspec, you can have the above error without a
corrupted repository.  Here is how.

 * You run git-fetch from elsewhere.  It is a small fetch and we
   decide not to keep the pack (iow, run unpack-objects instead
   of index-pack on the local side).  Or the fetch is over dumb
   transport that walks commits one-by-one.

   This git-fetch is interrupted.  We do _not_ update any refs
   in such a case, but we do not eradicate loose objects that
   were downloaded.  They stay dangling.

 * You push one of the commits downloaded above.  I.e. it is
   not connected to any of your ref.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help