From: Michael Haggerty <mhagger@alum.mit.edu>
To: Junio C Hamano <gitster@pobox.com>
Cc: Brad King <brad.king@kitware.com>,
Johan Herland <johan@herland.net>, Jeff King <peff@peff.net>,
Vicent Marti <tanoku@gmail.com>,
git@vger.kernel.org, Michael Haggerty <mhagger@alum.mit.edu>
Subject: [PATCH v3 00/27] Clean up update-refs --stdin and implement ref_transaction
Date: Mon, 7 Apr 2014 15:47:51 +0200 [thread overview]
Message-ID: <1396878498-19887-1-git-send-email-mhagger@alum.mit.edu> (raw)
Here is v3. It is also available on GitHub [1].
Thanks to Junio and Brad for their comments about v2. I think I have
addressed all of your comments (except for Junio's regrets that the
series didn't include a transactional receive-pack).
See the mailing list threads about v1 [2] and v2 [3] and the
longer-term goals of this campaign [4].
Changes since v2:
* Rebased to current master (there were no conflicts)
* Don't allow ref_transation_create() with new_sha1 set to zeros.
* Don't allow ref_transation_delete() with old_sha1 set to zeros.
* Fixed subject lines to use lower-case after the colon.
* Expanded a few commit messages, fixed a comment, and removed some
"squash" detritus in a commit message.
Cheers,
Michael
[1] https://github.com/mhagger/git, branch ref-transactions
[2] http://thread.gmane.org/gmane.comp.version-control.git/243731
[3] http://thread.gmane.org/gmane.comp.version-control.git/244857
[4] http://article.gmane.org/gmane.comp.version-control.git/243726
Michael Haggerty (27):
t1400: fix name and expected result of one test
t1400: provide more usual input to the command
parse_arg(): really test that argument is properly terminated
t1400: add some more tests involving quoted arguments
refs.h: rename the action_on_err constants
update_refs(): fix constness
update-ref --stdin: read the whole input at once
parse_cmd_verify(): copy old_sha1 instead of evaluating <oldvalue>
twice
update-ref.c: extract a new function, parse_refname()
update-ref --stdin: improve error messages for invalid values
update-ref --stdin: make error messages more consistent
update-ref --stdin: simplify error messages for missing oldvalues
t1400: test that stdin -z update treats empty <newvalue> as zeros
update-ref.c: extract a new function, parse_next_sha1()
update-ref --stdin -z: deprecate interpreting the empty string as
zeros
t1400: test one mistake at a time
update-ref --stdin: improve the error message for unexpected EOF
update-ref --stdin: harmonize error messages
refs: add a concept of a reference transaction
update-ref --stdin: reimplement using reference transactions
refs: remove API function update_refs()
struct ref_update: rename field "ref_name" to "refname"
struct ref_update: store refname as a FLEX_ARRAY
ref_transaction_commit(): simplify code using temporary variables
struct ref_update: add a lock field
struct ref_update: add a type field
ref_transaction_commit(): work with transaction->updates in place
Documentation/git-update-ref.txt | 18 +-
builtin/checkout.c | 2 +-
builtin/clone.c | 9 +-
builtin/merge.c | 6 +-
builtin/notes.c | 6 +-
builtin/reset.c | 6 +-
builtin/update-ref.c | 425 ++++++++++++++++++++-------------
contrib/examples/builtin-fetch--tool.c | 3 +-
notes-cache.c | 2 +-
notes-utils.c | 3 +-
refs.c | 195 +++++++++++----
refs.h | 94 ++++++--
t/t1400-update-ref.sh | 100 +++++---
13 files changed, 585 insertions(+), 284 deletions(-)
--
1.9.1
next reply other threads:[~2014-04-07 13:48 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-07 13:47 Michael Haggerty [this message]
2014-04-07 13:47 ` [PATCH v3 01/27] t1400: fix name and expected result of one test Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 02/27] t1400: provide more usual input to the command Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 03/27] parse_arg(): really test that argument is properly terminated Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 04/27] t1400: add some more tests involving quoted arguments Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 05/27] refs.h: rename the action_on_err constants Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 06/27] update_refs(): fix constness Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 07/27] update-ref --stdin: read the whole input at once Michael Haggerty
2014-04-07 13:47 ` [PATCH v3 08/27] parse_cmd_verify(): copy old_sha1 instead of evaluating <oldvalue> twice Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 09/27] update-ref.c: extract a new function, parse_refname() Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 10/27] update-ref --stdin: improve error messages for invalid values Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 11/27] update-ref --stdin: make error messages more consistent Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 12/27] update-ref --stdin: simplify error messages for missing oldvalues Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 13/27] t1400: test that stdin -z update treats empty <newvalue> as zeros Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 14/27] update-ref.c: extract a new function, parse_next_sha1() Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 15/27] update-ref --stdin -z: deprecate interpreting the empty string as zeros Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 16/27] t1400: test one mistake at a time Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 17/27] update-ref --stdin: improve the error message for unexpected EOF Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 18/27] update-ref --stdin: harmonize error messages Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 19/27] refs: add a concept of a reference transaction Michael Haggerty
2014-04-07 19:13 ` Junio C Hamano
2014-04-14 10:54 ` Michael Haggerty
2014-04-14 21:25 ` Junio C Hamano
2014-04-15 5:41 ` Michael Haggerty
2014-04-15 7:40 ` Junio C Hamano
2014-04-07 13:48 ` [PATCH v3 20/27] update-ref --stdin: reimplement using reference transactions Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 21/27] refs: remove API function update_refs() Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 22/27] struct ref_update: rename field "ref_name" to "refname" Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 23/27] struct ref_update: store refname as a FLEX_ARRAY Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 24/27] ref_transaction_commit(): simplify code using temporary variables Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 25/27] struct ref_update: add a lock field Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 26/27] struct ref_update: add a type field Michael Haggerty
2014-04-07 13:48 ` [PATCH v3 27/27] ref_transaction_commit(): work with transaction->updates in place Michael Haggerty
2014-04-11 19:57 ` [PATCH v3 00/27] Clean up update-refs --stdin and implement ref_transaction Ronnie Sahlberg
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=1396878498-19887-1-git-send-email-mhagger@alum.mit.edu \
--to=mhagger@alum.mit.edu \
--cc=brad.king@kitware.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=johan@herland.net \
--cc=peff@peff.net \
--cc=tanoku@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).