Reputation: 6095
Admittedly I'm a complete Linux newbie. I can just about get an Apache web server up and running but at a complete lost when delving deeper such as setting up permissions and security.
Anyway, I'm looking into simple self hosted solution for centralised GIT repositories, so wanted to check if there's something similar to subversion edge, where all the administration (managing users and repositories) can be done via the web interface.
Is there such a thing to manage a central GIT server? Planning to run the central repository over http(s) with basic authentication (username & password) for each user.
Upvotes: 5
Views: 2172
Reputation: 559
Although this is the 3-year-ago post, if you are still finding some production to manage the central git repositories with authentication, I recommend to use GitLab.
GitLab now has 2 versions you can choose, the Community Edition and the Enterprise Edition. It is very powerful that you just like hosting the GitHub in your host but without any costs.
Upvotes: 0
Reputation: 42334
I don't think Git web admin are popular and using something like gitolite is quite close to being just as easy once you get the hang of it.
Gitolite's config files are hosted in a git repo, so if you know git then you already know how to use Gitolite. It has two folders in the repo. One that contains SSH pub keys of your git users, and the other contains a single conf file that maps which users have access to which repos. Create a repo in the config file, commit it, and push it to the server and a new repo is created for you. It's that easy.
My advice is to not be afraid of the command line and work those muscles - they'll get stronger real quick - especially if you're a web developer and you're dealing with Apache on a headless server. Sure it's obviously hard for you in the beginning but after that it's like butter and you'll grow to actually prefer it, it's fast and direct: No waiting for GUI's to load or dealing with logins, no dealing with crippled functionality that isn't surfaced in the UI version, etc. When you get comfortable with command line you'll be able to automate everything. Make scripts to reboot remote servers, sync files to your CDN and uncache files, etc. Master how Git works (look in the .git folder of a checked out repository), rsync, and how ssh works. I'm not sure about SVN but Git has no concept of security and instead relies on ssh for secure transport.
Upvotes: 1