Logo Questions Linux Laravel Mysql Ubuntu Git Menu

Howto add an existing VS project to Mercurial (using TortoiseHG or VirtualHG)

I am new to Mercurial / TortoiseHG / VirtualHG. After reading some tutorials I still fail to understand how it is supposed to work.

Could someone please explain in a few simple steps how I add an existing VS2010 project to Mercurial using TortoiseHG or VirtualHG, and how I go from there?

So after adding it to Mercurial, what do I need to do to start working on this project again? Years ago I have worked with Visual SourceSafe, so maybe this experience confuses me right now.

Also I'd like to know what to do when colleagues want to work on this project.

like image 910
George Avatar asked Nov 14 '22 16:11


1 Answers

I see in the comments that you managed to get your source files under version control with:

$ hg init
# (setup .hgignore)
$ hg add
$ hg commit

Great! To share the project with your colleguages you need to make the repository accessible to them somehow. You have three options:

  • Filesystem access: This is the easiest if you already have a shared network drive setup. You put the repository on the shared drive where everybody can read and write. People make a clone from the drive back to their own machine and work on the files there. They commit there as well and finally use hg push to send their changes back to the repository on the shared drive.

    Make sure that everybody uses version 2.0 or later with such a setup! There has been bugs in earlier versions of Mercurial that could cause repository corruption when pushing to a repository on a network drive.

  • HTTP server: You can use hg serve to start a built-in webserver in Mercurial. The server can be used to clone from. In a trusted environment you can start it as

    $ hg serve --config "web.push_ssl=no" --config "web.allow_push=*"

    to disable the default security settings and allow anybody to push new changes to the server.

    For more heavy-duty use, we recommend setting up a "real" webserver and install the hgweb (Fast)CGI script that comes with Mercurial. See the Mercurial wiki for information on that.

  • SSH server: This is easy if you have an existing Unix setup where people have SSH login to a central server. You need to install Mercurial on the server and create a repository there that people have read and write access to. This is also covered in the wiki.

like image 191
Martin Geisler Avatar answered Dec 22 '22 09:12

Martin Geisler