send-pack: forbid pushing from a shallow repository
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>
			
			
				maint
			
			
		
							parent
							
								
									13eb4626c4
								
							
						
					
					
						commit
						0b854bcc2a
					
				|  | @ -208,6 +208,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)) { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Nguyễn Thái Ngọc Duy
						Nguyễn Thái Ngọc Duy