From: Tay Ray Chuan <rctay89@gmail.com>
To: git@vger.kernel.org
Cc: "Shawn O. Pearce" <spearce@spearce.org>,
"Daniel Barkalow" <barkalow@iabervon.org>,
"Sverre Rabbelier" <srabbelier@gmail.com>,
"Clemens Buchacher" <drizzd@aon.at>, "Jeff King" <peff@peff.net>,
"Junio C Hamano" <gitster@pobox.com>
Subject: [PATCH resend 2/3] transport-helper.c::push_refs(): know more about refs before pushing
Date: Fri, 4 Dec 2009 14:57:55 +0800 [thread overview]
Message-ID: <20091204145755.4d793b0b.rctay89@gmail.com> (raw)
In-Reply-To: <20091204145437.1a9910db.rctay89@gmail.com>
Know about rejected non-fast-forward refs, in addition to up-to-date
ones, by calling set_ref_status_for_push() in remote.[ch], before
passing push commands to the helper.
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
---
transport-helper.c | 10 +++-------
1 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/transport-helper.c b/transport-helper.c
index 11f3d7e..6ed7b55 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -334,16 +334,12 @@ static int push_refs(struct transport *transport,
else if (!mirror)
continue;
- ref->deletion = is_null_sha1(ref->new_sha1);
- if (!ref->deletion &&
- !hashcmp(ref->old_sha1, ref->new_sha1)) {
- ref->status = REF_STATUS_UPTODATE;
- continue;
- }
-
if (force_all)
ref->force = 1;
+ if (set_ref_status_for_push(ref, force_all))
+ continue;
+
strbuf_addstr(&buf, "push ");
if (!ref->deletion) {
if (ref->force)
--
1.6.6.rc1.286.gbc15a
next prev parent reply other threads:[~2009-12-04 6:58 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-04 6:54 [PATCH resend 0/3] transport: catch non-fast-forwards Tay Ray Chuan
2009-12-04 6:56 ` [PATCH resend 1/3] refactor ref status logic for pushing Tay Ray Chuan
2009-12-04 6:57 ` Tay Ray Chuan [this message]
2009-12-04 6:58 ` [PATCH resend 3/3] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2009-12-04 10:20 ` Jeff King
[not found] ` <20091204125042.c64f347d.rctay89@gmail.com>
2009-12-04 4:54 ` [PATCH 1/3] refactor ref status logic for pushing Tay Ray Chuan
[not found] ` <20091204144822.a61355d2.rctay89@gmail.com>
2009-12-04 7:05 ` [PATCH resend 0/3] transport: catch non-fast-forwards Daniel Barkalow
2009-12-08 14:34 ` [PATCH v2 " Tay Ray Chuan
2009-12-08 14:35 ` [PATCH v2 1/3] refactor ref status logic for pushing Tay Ray Chuan
2009-12-08 17:17 ` Daniel Barkalow
2009-12-09 3:40 ` Tay Ray Chuan
2009-12-09 7:13 ` Daniel Barkalow
2009-12-08 14:36 ` [PATCH v2 2/3] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2009-12-08 14:37 ` [PATCH v2 3/3] transport-helper.c::push_refs(): emit "no refs" error message Tay Ray Chuan
2009-12-24 7:40 ` [PATCH v3 0/6] transport: catch non-fast forwards Tay Ray Chuan
2009-12-24 7:40 ` [PATCH v3 1/6] t5541-http-push.sh: add tests for non-fast-forward pushes Tay Ray Chuan
2009-12-24 7:41 ` [PATCH v3 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs Tay Ray Chuan
2009-12-24 7:42 ` [PATCH v3 3/6] refactor ref status logic for pushing Tay Ray Chuan
2009-12-24 7:43 ` [PATCH v3 4/6] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2009-12-24 7:44 ` [PATCH v3 5/6] transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed Tay Ray Chuan
2009-12-24 7:45 ` [PATCH v3 6/6] transport-helper.c::push_refs(): emit "no refs" error message Tay Ray Chuan
2010-01-05 6:32 ` [PATCH v3 5/6] transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed Jeff King
2010-01-05 10:01 ` Tay Ray Chuan
2010-01-06 12:04 ` Jeff King
2010-01-06 21:41 ` Tay Ray Chuan
2010-01-08 1:04 ` Tay Ray Chuan
2010-01-05 6:35 ` [PATCH v3 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs Jeff King
2010-01-05 10:01 ` Tay Ray Chuan
2010-01-06 12:05 ` Jeff King
2010-01-06 1:04 ` Junio C Hamano
2010-01-06 2:12 ` Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 0/6] transport: catch non-fast forwards Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 1/6] t5541-http-push.sh: add tests for non-fast-forward pushes Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 2/6] t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 3/6] refactor ref status logic for pushing Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 4/6] transport.c::transport_push(): make ref status affect return value Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 5/6] transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed Tay Ray Chuan
2010-01-08 2:12 ` [PATCH v4 6/6] transport-helper.c::push_refs(): emit "no refs" error message Tay Ray Chuan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20091204145755.4d793b0b.rctay89@gmail.com \
--to=rctay89@gmail.com \
--cc=barkalow@iabervon.org \
--cc=drizzd@aon.at \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=spearce@spearce.org \
--cc=srabbelier@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.