Things such as Github, Bitbucket, DropBox — manages the content-hosting such as tickets and repo -hosting (DB not tickets but can be used to store repos). I want a solution where I manage myself the content-hosting of thing such as Git -repositories and tickets.
Trial 0: trying to tune Git, too time-consuming
I followed the instructions
here
but some difficulties then I followed a lot of other tutorials with
much more difficulties. I got cloning with"git clone --bare xxxworking but unable to push
xxx.git; cd xxx; git update-server-info"
things with"--shared", got fed up to this kind of manual hacks.
There is too much material, too much irrelevant material and too much
outdated material.
I repeat I want to do the content-hosting myself. So how can I host my git repos?
Perhaps related
If you’re running a Linux server an option is to use Git + SSH.
On The Server
Create a user account called
gitwhich has permissions over your main git project directory. This is useful for allowing all collaborators to push on shared projects.Add the RSA public key for each of your client machines to the
authorized_keysfile on the server. (You can generate a private-public key pair usingssh-keygen -t rsa -b 4096on most Linux distributions.)Create a new bare repository for your project as the
gituser.git init myproject --bareOn the Client
Turn on private key authentication by enabling the
IdentifyFilein yourssh_config.Clone the bare repository.
git clone git@<server>:/var/git/myprojectMake your changes.
Commit the changes and push them back to the remote repo.
git push origin masterIf you need more specific instructions (such as the exact commands to create a user account) checkout the official Pro Git book.