git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: GIT push to sftp (feature request)

From
Martin Langhoff <martin.langhoff@gmail.com>
Date
Aug 5, 2007, 21:12 UTC
Message-ID
<46a038f90708051412p722aa906v73e986a805f1558b@mail.gmail.com>
In-Reply-To
<200708051105.44376.pavlix@pavlix.net>
On 8/5/07, pavlix <pavlix@pavlix.net> wrote:
> Did I miss something?

Unfortunately, git does not "push" over protocols that cannot execute git on the remote server. We call them "dumb protocols" and if you search this list for that name, you'll find lots.

Git tries to be smart in at least 2 ways that don't work with dump protocols: it works locklessly (yet it performs atomic updates) and it sends only the objects needed over the wire (saving a lot of bandwidth).

Using dumb protocols it's impossible to do either. And these days it's not that hard to setup git (or any other binary) to execute at the remote end.

Bazaar-NG and others do support dumb protocols, and (I think) they do it by using one big lock over the repo. But the lock is not safe, and things can (and do) go wrong with weak locking schemes.

git used to support rsync -- but I don't think that works anymore for pushes. Other than git over ssh, perhaps you can try the apache module that implements git over http?

hope that helps,
martin
Previous: Johannes SchindelinNext: Matthieu Moy
Message 3 of 8 in “GIT push to sftp (feature request)”
  1. pavlixAug 5, 2007
  2. Johannes SchindelinAug 5, 2007
  3. Martin LanghoffAug 5, 2007
  4. Matthieu MoyAug 5, 2007
  5. Martin LanghoffAug 6, 2007
  6. Matthieu MoyAug 6, 2007
  7. Jakub NarebskiAug 6, 2007
  8. Jan HudecAug 7, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.