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>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
(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)) {