This patch series adds a flag to git push to update the remote refs atomically. This series applies on top of origin/mh/reflog-expire It can also be found at github[1]. This series incorporates all suggestions by Eric. Most changes appear in patch 4/7 as it is a complete rewrite compared to v5 of this patch series. 5/7 is new to the series and cleans up the rewrite by moving the function execute_command around. Any comments are welcome! Thanks, Stefan [1] https://github.com/stefanbeller/git/tree/atomic-push-v6 Ronnie Sahlberg (3): receive-pack.c: add protocol support to negotiate atomic-push send-pack.c: add --atomic command line argument push.c: add an --atomic argument Stefan Beller (4): send-pack: Rename ref_update_to_be_sent to check_to_send_update receive-pack.c: receive-pack.c: use a single ref_transaction for atomic pushes receive-pack: move execute_commands_non_atomic before execute_commands t5543-atomic-push.sh: add basic tests for atomic pushes Documentation/git-push.txt | 7 +- Documentation/git-send-pack.txt | 7 +- Documentation/technical/protocol-capabilities.txt | 13 +- builtin/push.c | 2 + builtin/receive-pack.c | 165 +++++++++++++++----- builtin/send-pack.c | 6 +- remote.h | 3 +- send-pack.c | 66 +++++++- send-pack.h | 3 +- t/t5543-atomic-push.sh | 178 ++++++++++++++++++++++ transport.c | 5 + transport.h | 1 + 12 files changed, 405 insertions(+), 51 deletions(-) create mode 100755 t/t5543-atomic-push.sh -- 2.2.1.62.g3f15098 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html