On Thu, Sep 15, 2011 at 5:42 AM, Joshua Stoutenburg <jehoshua02@xxxxxxxxx> wrote: > I got confused in Chapter 5 of the Pro Git pdf book, trying to discern > what needs to be done on the server, and what needs to be done on the > work station OK - some hints: 1 - For private code, or public code where you value the service, you can use the commercial services out there, that's easy 2 - For public/foss code, with low/simple service expectations, you can get free hosting 3 - For a private setup... the normal thing is to use git over ssh, so the server should be reachable by your users, and your users need an ssh account. You will want to setup a group ("gituser") and create a directory ("/git") owned by that group, writable by the group, with sticky group mode. To create a new project repo, ssh into the server and say git --git-dir /git/fooproject init --shared . It will be empty -- on a user workstation create your first commit, and push it into the (so far empty) repo with git push git+ssh://hostname/git/fooproject master . On the server you can add a gitweb or cgit install for browsability. If you want to allow anonymous users to access your git repos in readonly mode, you can setup the git "service", with xinetd. That allows you to tell people "git clone git://hostname/fooproject" . Careful when configuring network services if the host is public, you don't want to serve git://host/etc/shadow :-) This is what most "git servers" do -- it works in your company network, it also works for a public FOSS project with anon readers and a handful of ssh-authenticated committers. (For a project using a more distributed model of one-developer-one-repo, you follow the same setup but perhaps make per-developer directories.) 4 - You _can_ do git over http, instead of ssh, but I suspect the setup is more involved. In any case, others will have to fill in. > Also, I'm not clear on the best way to manage large numbers of git > users (like 12-24), who also may have permissions to other services as > well (ftp, databases, email, etc). I have some hesitancy creating > each one manually on the CLI. CLI is generally fine :-) if you contract a hosting server that gives you email/db/ftp and has a webbased admin UI, all you need "additional" is to ensure you can manage ssh accounts with ease. cheers, m -- martin.langhoff@xxxxxxxxx martin@xxxxxxxxxx -- Software Architect - OLPC - ask interesting questions - don't get distracted with shiny stuff - working code first - http://wiki.laptop.org/go/User:Martinlanghoff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html