views:

49

answers:

3

Hi everybody,

I have tested both mercurial and SVN recently, and I fell for Mercurial to solve my version control needs. However, I have files in my repo, that I work on locally and commit my changes to daily.

I have yet not found any way to deploy files to a remote production environment from my local testing environment.

How can I do this and by "one click only" replace and/or update the files that have been changed from a mercurial repo?

I have FTP access to my production environment and, if that makes any difference.

Thanks

+1  A: 
  • You can use rsync to copy over the changes from your working directory.

  • You can use hg diff to generate a patch, or hg diff -r <rev> to generate a patch from a particular revision, and then apply the change remotely.

  • You could make the remote end an hg repo and then push to it and update it.

  • You could keep your local changes with quilt or hg mq and migrate those patches.

  • You could just copy over the whole working directory, with replacement.

Borealid
+1  A: 

Why not clone the code? using hg clone my-source-repo in your development location you get an updated state of your code.

Ton
Ok, but that recreates all files from the latest revision, which would be really not good if there's thousands in the reop
Industrial
+1  A: 

When you don't need only the working copy without the repository, you can extract the committed files with hg archive.

Rudi