Re: [PATCH v2 0/5] push: update remote tags only with force

2012-11-09 Thread Chris Rorvick
On Fri, Nov 9, 2012 at 12:38 PM, Jeff King  wrote:
> On Sun, Nov 04, 2012 at 09:08:23PM -0600, Chris Rorvick wrote:
>
>> Patch series to prevent push from updating remote tags w/o forcing them.
>> Split out original patch to ease review.
>>
>> 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|6 ++
>>  cache.h|7 ++-
>>  remote.c   |   39 +++
>>  t/t5516-fetch-push.sh  |   30 +-
>>  transport-helper.c |6 ++
>>  transport.c|   25 +++--
>>  transport.h|   10 ++
>>  9 files changed, 119 insertions(+), 38 deletions(-)
>
> I have not looked carefully at this topic yet, but I did try merging it
> to "pu" and found that it had some textual conflicts with the
> nd/builtin-to-libgit topic, which moves some builtin/send-pack.c code to
> send-pack.c. Since I am graduating that topic to master, I went ahead
> and just rebased your topic on top.
>
> If you do a re-roll, please use an updated master, and feel free to
> grab (and double-check!) the rebase I am about to send out in 'pu'. I
> also included the minor signed/unsigned pointer warning fixup in the
> rebase, too.
>
> -Peff

Thanks, I've rebased and checked against the changes in pu.  Looks
good to me.  I have a couple of other minor fixes (see below for
details.)  I'll include these in an update if there is sufficient
interest in this.

Chris

-- 8< --
diff --git a/remote.c b/remote.c
index fde2a79..b025a38 100644
--- a/remote.c
+++ b/remote.c
@@ -1351,9 +1351,8 @@ void set_ref_status_for_push(struct ref
*remote_refs, int send

if (ref->update) {
ref->nonfastforward =
-   ref->update &&
-   (!has_sha1_file(ref->old_sha1)
- || !ref_newer(ref->new_sha1, ref->old_sha1));
+   !has_sha1_file(ref->old_sha1)
+ || !ref_newer(ref->new_sha1, ref->old_sha1);

if (!ref->forwardable) {
ref->requires_force = 1;
diff --git a/transport.c b/transport.c
index c183971..a380ad7 100644
--- a/transport.c
+++ b/transport.c
@@ -749,7 +749,7 @@ void transport_print_push_status(const char *dest,
struct ref *r
else
*reject_mask |= REJECT_NON_FF_OTHER;
} else if (ref->status == REF_STATUS_REJECT_ALREADY_EXISTS) {
-   *reject_mask |= REJECT_ALREADY_EXISTS;
+   *reject_mask |= REJECT_ALREADY_EXISTS;
}
}
 }
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2 0/5] push: update remote tags only with force

2012-11-09 Thread Jeff King
On Sun, Nov 04, 2012 at 09:08:23PM -0600, Chris Rorvick wrote:

> Patch series to prevent push from updating remote tags w/o forcing them.
> Split out original patch to ease review.
> 
> 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|6 ++
>  cache.h|7 ++-
>  remote.c   |   39 +++
>  t/t5516-fetch-push.sh  |   30 +-
>  transport-helper.c |6 ++
>  transport.c|   25 +++--
>  transport.h|   10 ++
>  9 files changed, 119 insertions(+), 38 deletions(-)

I have not looked carefully at this topic yet, but I did try merging it
to "pu" and found that it had some textual conflicts with the
nd/builtin-to-libgit topic, which moves some builtin/send-pack.c code to
send-pack.c. Since I am graduating that topic to master, I went ahead
and just rebased your topic on top.

If you do a re-roll, please use an updated master, and feel free to
grab (and double-check!) the rebase I am about to send out in 'pu'. I
also included the minor signed/unsigned pointer warning fixup in the
rebase, too.

-Peff
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html