From 4b3b1e1e488fe83a8a889ff26cf88355692b6a8c Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Sun, 21 Jan 2007 11:04:13 -0800 Subject: [PATCH] git-push through git protocol This allows pushing over the git:// protocol, and while it's not authenticated, it could make sense from within a firewalled setup where nobody but trusted internal people can reach the git port. git-daemon is possibly easier and faster to set up in the kind of situation where you set up git instead of CVS inside a company. "git-receive-pack" is disabled by default, so you need to enable it explicitly by starting git-daemon with the "--enable=receive-pack" command line argument, or by having your config enable it automatically. Signed-off-by: Linus Torvalds Signed-off-by: Junio C Hamano --- daemon.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/daemon.c b/daemon.c index f039534d6..959037221 100644 --- a/daemon.c +++ b/daemon.c @@ -372,9 +372,16 @@ static int upload_archive(void) return -1; } +static int receive_pack(void) +{ + execl_git_cmd("receive-pack", ".", NULL); + return -1; +} + static struct daemon_service daemon_service[] = { { "upload-archive", "uploadarch", upload_archive, 0, 1 }, { "upload-pack", "uploadpack", upload_pack, 1, 1 }, + { "receive-pack", "receivepack", receive_pack, 0, 1 }, }; static void enable_service(const char *name, int ena) { -- 2.26.2