[PATCH v2 0/3] transport: catch non-fast-forwards
- From
Tay Ray Chuan <rctay89@gmail.com>
- Date
- Dec 8, 2009, 14:34 UTC
- Message-ID
- <20091208223413.98e99d3e.rctay89@gmail.com>
- In-Reply-To
- <20091204125042.c64f347d.rctay89@gmail.com>
Daniel, I've reworked the refactoring of ref status logic, like you mentioned, such that transport_push() calls the generic function before calling the transport->push_refs() implementation.
Junio, although this series affects http transports (smart), please treat this series as separate from 'tr/http-updates' in 'next'.
Summary for those who missed v1: This patch series applies on top of 'next', and deals with alerting the user to non-fast-forward pushes when using helpers (smart).
Previously, git silently exited. This situation involves the curl helper and the smart protocol. The fast-forward push is only detected when curl executes the rpc client (git-send-pack). Now, we detect it before telling the helper to push.
Changes from v1: - reworked refactoring of ref status logic (patch 1) - rewrote the patch for transport_push() (patch 2) - minor rewording of commit message (patch 3)
Tay Ray Chuan (3): refactor ref status logic for pushing transport.c::transport_push(): make ref status affect return value transport-helper.c::push_refs(): emit "no refs" error message
builtin-send-pack.c | 50 +++++++++++--------------------------------------- remote.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ remote.h | 2 ++ transport-helper.c | 18 ++++++++++-------- transport.c | 11 +++++++++-- 5 files changed, 82 insertions(+), 49 deletions(-)
-- Cheers, Ray Chuan