[PATCH v2 01/16] send-pack: forbid pushing from a shallow repository
- From
Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
- Date
- Jul 20, 2013, 09:57 UTC
- Message-ID
- <1374314290-5976-2-git-send-email-pclouds@gmail.com>
- In-Reply-To
- <1374314290-5976-1-git-send-email-pclouds@gmail.com>
send-pack can send a pack with loose ends to the server. receive-pack before 6d4bb38 (fetch: verify we have everything we need before updating our ref - 2011-09-01) does not detect this and keeps the pack anyway, which corrupts the repository, at least from fsck point of view.
send-pack will learn to safely push from a shallow repository later.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> --- builtin/send-pack.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/builtin/send-pack.c b/builtin/send-pack.c index 152c4ea..d4cbf64 100644 --- a/builtin/send-pack.c +++ b/builtin/send-pack.c @@ -184,6 +184,9 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix) (send_all && args.send_mirror)) usage(send_pack_usage); + if (is_repository_shallow()) + die("attempt to push from a shallow repository"); + if (remote_name) { remote = remote_get(remote_name); if (!remote_has_url(remote, dest)) {
-- 1.8.2.83.gc99314b