Set up a Private Git repository via SSH

Dmitri Popov

Productivity Sauce

Feb 06, 2014 GMT
Dmitri Popov

If you need to set up a private Git repository, you don't have to deploy a full-blown Git server or use one of many popular Git services like GitHub and Bitbucket. Instead, you can opt for a quick-and-dirty solution which lets you work with git repositories via SSH.To do this, you need a remote machine with Git and SSH installed on it. Establish an SSH connection to the server, then create and initialize a bare Git repository:

mkdir repo.git
cd repo.git
git init --bare

On your local machine, create and initialize the git repository by running the git init command. Use then the git remote add origin ssh://user@remotehost/path/to/repo command to add the remote host to the repository (replace user with the actual user name, remotehost with the server's IP address or domain name, and /path/to/repo with the path to the remote repository). That's pretty much all there is to it. On your local machine, launch the terminal, switch to the repository, and use the usual commands to add files, create a commit, and push it to the remote repository:

git add -A
git commit -m "Initial commit"
git push origin master

Instead of running the above commands every time you want to push changes to the remote repository, you can add the following function to the ~/.bashrc file:

function gitc
{
cd $1
git add -A
git commit -m "$2"
git push origin master
}

Next time you need to push changes, open the terminal and run the gitc /path/to/repo "Commit message goes here" command.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News