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

Re: Clone to an SSH destination

From
Sitaram Chamarty <sitaramc@gmail.com>
Date
Sep 3, 2012, 14:26 UTC
Message-ID
<CAMK1S_jL-U_U8BcEaiTqgy3Z+KvsvmfUoz8GkCkDjQJafgY_zw@mail.gmail.com>
In-Reply-To
<20120903180832.f6e9fc03a450011ea2b22737@domain007.com>

On Mon, Sep 3, 2012 at 7:38 PM, Konstantin Khomoutov <flatworm@users.sourceforge.net> wrote:

Show 41 quoted lines
> On Mon, 3 Sep 2012 14:07:48 +0100 (BST)
> Mark Hills <Mark.Hills@framestore.com> wrote:
>
> [...]
>> > But I'm actually more curious about why you need this in the first
>> > place, there's a bunch of devs where I work as well, but they never
>> > have the need to create new repos on some NFS drive in this manner.
>>
>> Without a command-line onto the filesystem (either local or NFS), how
>> do you create a new repository for a new project?
>>
>> We have a fairly large team on a diverse set of projects. Projects
>> come and go, so it's a burden if the administrator is needed just to
>> create repos.
>>
>> Likewise, it's a step backwards for the developer to need to login
>> themselves over SSH -- whereas 'git clone' is so easy to NFS.
>>
>> > What are your devs doing when they do clone their current working
>> > directory to some NFS location, maybe there's a better way to do it.
>>
>> Most projects start as a small test at some point; eg.
>>
>>   mkdir xx
>>   cd xx
>>   git init
>>   <write some code>
>>   git commit
>>   ...
>>
>> When a project becomes more official, the developer clones to a
>> central location; eg.
>>
>>   git clone --bare . /net/git/xx.git
>>
>> This is the step that is inconvenient if only SSH access is available.
>
> Well, then it looks you want something like github.
> In this case look at some more integrated solution such as Gitlab [1]
> -- I did not try it, but it looks like you import your users there and
> then they can log in, add their SSH keys and create their projects.
Anything web based would be even more overhead than a simple:
    ssh server git init --bare foo/bar.git && git push --mirror
ssh://git/~/foo/bar.git
Gitolite of course is even closer, as we discussed earlier.
Show 5 quoted lines
> I also think gitolite has some way to actually use regular SSH users
> (or even users coming from a web server which is a front-end for Smart
> HTTP Git transport, doing its own authentication).  This is explained
> in [2], and I hope Sitaram could provide more insight on setting things
> up this way, if needed  (I did not use this feature).

As I said earlier, regardless of how he does it, authentication will change, since he is no longer using a local (well, locally mounted) file system as the "server". That may be "get everyone to send us a pub key" or "give everyone an http password and use smart http".

In addition, if they choose smart http, they *have to* use gitolite. Unlike ssh, where that two command sequence above would do it all for them, there is no eqvt if your git server is behind http.

Show 7 quoted lines
>
> 1. http://gitlabhq.com/
> 2. http://sitaramc.github.com/gitolite/g2/auth.html
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
-- 
Sitaram
Previous: Konstantin KhomoutovNext: Enrico Weigelt
Message 5 of 10 in “Clone to an SSH destination”
  1. Mark HillsSep 3, 2012
  2. Ævar Arnfjörð BjarmasonSep 3, 2012
  3. Mark HillsSep 3, 2012
  4. Konstantin KhomoutovSep 3, 2012
  5. Sitaram ChamartySep 3, 2012
  6. Enrico WeigeltSep 3, 2012
  7. Konstantin KhomoutovSep 3, 2012
  8. Sitaram ChamartySep 3, 2012
  9. Mark HillsSep 3, 2012
  10. Sitaram ChamartySep 3, 2012

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.