<p>At my job we make &amp; sell websites. Usually we install our .NET C# based site on a customer's server and maintain and support it remotely. However, every once in a while, for bigger development works and just to make things simpler (and faster!), we will copy the site to a local server.</p>
<p>This is great, but has one pain - moving the site back to the customer. Now, If nothing was change on the customer's copy - no problem. However, it is the sad truth that sometime (read more often than I would like) some fixes were needed to be applied on the production server. Either because the customer needed it NOW or simply because it was major bug.</p>
<p>I know that you can easily apply those bug fixes to the local copy as well, but this is an error prone process. So I'm setting my hopes on a distributed version control to help synchronize the two copies.</p>
<p>Here is what I need:</p>
<ul>
<li>Easy to install - nothing else needed except the installer and admin rights.</li>
<li>Can integrated in an existing website as a virtual directory and works on port 80 - no hassle with new DNS required.</li>
<li>Excellent software</li>
</ul>
<p>That's it. Any ideas?</p>
<hr>
<h2>Some comments on the answers</h2>
<p>First, thanks! much appreciated.</p>
<p>I've looked at Mercurial and  Bazaar and both look very good. The only caveat is the installation as a virtual directory on IIS. Mercurial, as far as I understand, use a special protocol (wire) and Bazaar needs and addition of python extensions. Is there another system which is easier to integrate with IIS? I'm willing to take a performance hit for that.</p>

[{'answer_id': 29899, 'author': 'epatel', 'author_id': 842, 'author_profile': 'https://Stackoverflow.com/users/842', 'pm_score': 0, 'selected': False, 'text': '<p>Maybe not exactly what you request but checkout <a href="http://www.aboutmyip.com/AboutMyXApp/DeltaCopy.jsp" rel="nofollow noreferrer">DeltaCopy</a> which is a windows version of <a href="http://en.wikipedia.org/wiki/Rsync" rel="nofollow noreferrer">rsync</a>. You can also read about another rsync solution <a href="http://hype-free.blogspot.com/2007/02/using-rsync-on-windows.html" rel="nofollow noreferrer">here</a></p>\n'}, {'answer_id': 29900, 'author': 'Kristof Provost', 'author_id': 1466, 'author_profile': 'https://Stackoverflow.com/users/1466', 'pm_score': 2, 'selected': False, 'text': '<p>I\'d look at either <a href="http://www.selenic.com/mercurial/wiki/" rel="nofollow noreferrer">Mercurial</a> or <a href="http://bazaar-vcs.org/" rel="nofollow noreferrer">Bazaar</a>. I\'m told Git also works on windows, but I suspect the windows port is still a second class port at best.</p>\n\n<p>You\'ll probably need to be able to run python scripts on your webserver to host either of them.</p>\n'}, {'answer_id': 30267, 'author': 'Rad', 'author_id': 1349, 'author_profile': 'https://Stackoverflow.com/users/1349', 'pm_score': 0, 'selected': False, 'text': '<p>I can also vouch for Mercurial. Simple to use and powerful to boot!</p>\n'}]
['https://Stackoverflow.com/questions/29882', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/2892/']