All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/5] push: update remote tags only with force
@ 2012-11-17 20:16 Chris Rorvick
  2012-11-17 20:16 ` [PATCH v4 1/5] push: return reject reasons via a mask Chris Rorvick
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Chris Rorvick @ 2012-11-17 20:16 UTC (permalink / raw)
  To: git
  Cc: Chris Rorvick, Angelo Borsotti, Drew Northup, Michael Haggerty,
	Philip Oakley, Johannes Sixt, Kacper Kornet, Jeff King,
	Felipe Contreras, Junio C Hamano

This patch set can be divided into two sets:

  1. Provide useful advice for rejected tag references.

     push: return reject reasons via a mask
     push: add advice for rejected tag reference

     Recommending a merge to resolve a rejected tag update seems
     nonsensical since the tag does not come along for the ride.  These
     patches change the advice for rejected tags to suggest using
     "push -f".

  2. Require force when updating tag references, even on a fast-forward.

     push: flag updates
     push: flag updates that require force
     push: update remote tags only with force

     This is in response to the following thread:

       http://thread.gmane.org/gmane.comp.version-control.git/208354

     This solution prevents fast-forwards if the reference is of the
     refs/tags/* hierarchy or if the old object is not a commit.

These patches contain the following updates since the v3 set:

  * builtin/push.c: Remove "push --force" suggestion from advice.
  * remote.c: Only require old object to be a commit to be forwardable.
      I added the check for object types based comments from Peff in
      original thread, and I think this implementation is actually what
      he intended.  If the new object is a tag, the operation is not
      destructive so there is no reason to block it (at least within
      the scope of these changes) as was done in the previous iteration.
  * t/t5516-fetch-push.sh: Create separate tests for the lightweight and
      annotated cases.  Do the annotated tests outside of refs/tags/
      so that it actually tests different functionality.

Chris Rorvick (5):
  push: return reject reasons via a mask
  push: add advice for rejected tag reference
  push: flag updates
  push: flag updates that require force
  push: update remote tags only with force

 Documentation/git-push.txt | 10 +++++-----
 builtin/push.c             | 24 +++++++++++++++---------
 builtin/send-pack.c        |  9 +++++++--
 cache.h                    |  7 ++++++-
 remote.c                   | 46 ++++++++++++++++++++++++++++++++++++----------
 send-pack.c                |  1 +
 t/t5516-fetch-push.sh      | 30 +++++++++++++++++++++++++++++-
 transport-helper.c         |  6 ++++++
 transport.c                | 25 +++++++++++++++----------
 transport.h                | 10 ++++++----
 10 files changed, 126 insertions(+), 42 deletions(-)

-- 
1.8.0.155.g3a063ad.dirty

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-11-20  5:45 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-17 20:16 [PATCH v4 0/5] push: update remote tags only with force Chris Rorvick
2012-11-17 20:16 ` [PATCH v4 1/5] push: return reject reasons via a mask Chris Rorvick
2012-11-17 20:16 ` [PATCH v4 2/5] push: add advice for rejected tag reference Chris Rorvick
2012-11-17 20:16 ` [PATCH v4 3/5] push: flag updates Chris Rorvick
2012-11-17 20:16 ` [PATCH v4 4/5] push: flag updates that require force Chris Rorvick
2012-11-17 20:16 ` [PATCH v4 5/5] push: update remote tags only with force Chris Rorvick
2012-11-17 21:53   ` [PATCH v4.1 " Chris Rorvick
2012-11-19 20:23     ` Junio C Hamano
2012-11-20  4:43       ` Chris Rorvick
2012-11-20  5:44         ` Junio C Hamano

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.