Reputation: 9550
I am new to mercurial. Here the question is basic, but I am very confused after googling.
I am programming individually, I have my mercurial installed on local machine (ubuntu 11.04), it is working well. Now I would like to keep a repository on a server, such that I can push and pull whenever good for me. I would like to use SSH and prefer not using any web servers. Is it possible? I have installed the mercurial-server on the server, but what is next? How to setup a remote repository and how to push and pull codes? Help needed indeed. Thanks.
Upvotes: 12
Views: 12336
Reputation: 26597
You have various way to publish a Mercurial repository on a server. You can find detailed information on the dedicated wiki page: Publishing Mercurial Repositories
In your case, since you want only have SSH access, the following steps should be enough:
.hg
directory). You can use scp
for example.Clone the copied repository back to your local machine:
hg clone ssh://myhostname.com//path/to/directory
You can now push/pull from your server.
Obviously, you need SSH access to your server.
Also note the double /
after the hostname, this is perfectly normal and you must put them both. The first one is to "terminate" the hostname part and the second one is to indicate that the path start at the root of the distant filesystem.
If you want to give access to other people, be sure to have a look at How To Handle Multiple Committers to configure the access rights correctly.
Upvotes: 14
Reputation: 73758
You don't need the mercurial-server
package. It is a third-party tool to manage Mercurial repositories. You only need Mercurial and SSH on the server.
Then make sure the command
$ ssh server hg version
works. Then create a repository called test in your home directory and try cloning it with
$ hg clone ssh://server/test
You can setup SSH keys when the basics work, the wiki pages krtek linked to will help with that.
Upvotes: 3