From: Jeff King <peff@peff.net>
To: git@vger.kernel.org
Cc: Junio C Hamano <gitster@pobox.com>,
Pierre Habouzit <madcoder@debian.org>,
Daniel Barkalow <barkalow@iabervon.org>,
Alex Riesen <raa.lkml@gmail.com>
Subject: [RFC/PATCH 0/3] tracking per-ref errors on push
Date: Tue, 13 Nov 2007 05:25:01 -0500 [thread overview]
Message-ID: <20071113102500.GA2767@sigill.intra.peff.net> (raw)
Following is a series to track push errors for individual refs. This
should have three immediate advantages (the first two of which I
implement in the series):
- updating tracking refs only for non-error refs
- incorporating remote rejection into the printed status
- printing errors in a different order than we processed
(e.g., consolidating non-ff errors near the end with
a special message)
The patches are:
1. send-pack: track errors for each ref
This is the groundwork for the other 2. I also think it makes the
code a bit more readable by splitting out the print formatting from
the push logic, and by explicitly naming the different states that
we were previously deducing from the states of other variables.
2. send-pack: check ref->status before updating tracking refs
This should fix the bugs that people are seeing from 334f483
3. send-pack: assign remote errors to each ref
This may have some problems, as I will explain below.
I have a few concerns which make this an RFC and not a real patch
submission:
- I have done pretty minimal testing, and there are no automated tests
(at least 2, which fixes a real bug, should get a test).
Unfortunately, I am out of time to work on this and am leaving the
country for a week. Between that and Thanksgiving travel, I'm not
sure when I'll have time to finish up, so I thought it best to have
comments waiting (and others should feel free to pick up the work if
they want -- Alex, I think your error consolidation should go nicely
on top of this).
- It looks like the push mirror code just made it into next, which
is going to require a conflict-heavy rebase on my part.
- There is a potential performance bottleneck in patch 3. See the
commit message.
- In patch 3, the 'ng' message sent by the remote are not
unambiguously parseable. See the commit message.
-Peff
next reply other threads:[~2007-11-13 10:25 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-13 10:25 Jeff King [this message]
2007-11-13 10:27 ` [PATCH/RFC 1/3] send-pack: track errors for each ref Jeff King
2007-11-13 11:32 ` Jeff King
2007-11-13 19:04 ` Alex Riesen
2007-11-13 22:30 ` Jeff King
2007-11-13 20:18 ` Alex Riesen
2007-11-13 10:27 ` [PATCH/RFC 2/3] send-pack: check ref->status before updating tracking refs Jeff King
2007-11-13 10:29 ` [PATCH/RFC 3/3] send-pack: assign remote errors to each ref Jeff King
2007-11-13 10:29 ` Jeff King
2007-11-13 11:34 ` [RFC/PATCH 0/3] tracking per-ref errors on push Jeff King
2007-11-13 11:36 ` [PATCH v2 1/3] send-pack: track errors for each ref Jeff King
2007-11-13 11:36 ` [PATCH v2 2/3] send-pack: check ref->status before updating tracking refs Jeff King
2007-11-13 11:37 ` [PATCH v2 3/3] send-pack: assign remote errors to each ref Jeff King
2007-11-14 1:41 ` Junio C Hamano
2007-11-14 1:56 ` Junio C Hamano
2007-11-14 2:01 ` Johannes Schindelin
2007-11-14 6:12 ` Junio C Hamano
2007-11-15 4:54 ` Jeff King
2007-11-16 5:05 ` Junio C Hamano
2007-11-15 4:47 ` Jeff King
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=20071113102500.GA2767@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=barkalow@iabervon.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=madcoder@debian.org \
--cc=raa.lkml@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).