I have done some programming and I have used Mercurial for source control. I now need to send all of my code to someone else (because they are going to take over).
Since all copies of a mercurial repository is a full and real repository my first thought is to first do a clone of my repository without an update and then zipping and emailing that clone. Is this a good way, or is there a better way?
For example when using the TortoiseHg Repository Explorer I can right-click on a changeset and under Export there are various options that looks like they could be doing something interesting, but I don’t quite understand them or know which one to use.
What you’ve suggested will work fine, but you can also use
hg bundleto create a changegroup file encapsulating a compressed copy of the entire repository (seehg help bundlefor the full details, or this page: http://www.selenic.com/mercurial/hg.1.html#bundle).On your machine:
Then send
my_repo.hgoff to the other developer, who can clone directly from that:(Note: this sort of assumes you’re working with linux, but I imagine TortoiseHg supports something similar, since this is a basic feature of Mercurial).
EDIT: Looks like the equivalent using TortoiseHg would be to export a range of changesets as a bundle (see here: http://tortoisehg.bitbucket.io/manual/2.9/patches.html#export-patches). In this case, you want to select the very first changeset all the way up through the tip, and export as a bundle.