Note that there are some explanatory texts on larger screens.

plurals
  1. POUsing Mercurial with Branches - publishing to FTPonly accessible WebServers
    text
    copied!<p>We are a small team of developers working with a Web Application which is published using a Web Server that is only accessible throught FTP.</p> <p><strong>Our workflow is the following one:</strong></p> <ul> <li>A developer is working out some requested feature locally </li> <li>When its done, commits it and Pushes to a 'central' repository</li> <li>Few times a day, one of developers <em>publishes</em> the files that have been changed to a testing WebSite, to let key users see how does features have been implemented.</li> <li>Once in a week, we deploy to our production site</li> </ul> <p>As our Webserver doesnt support SSH, we can't push changesets and update on the server, so we created a custom script which Transfers the changed files throught FTP.</p> <p>Each time we use that script a new tag is created, so we know -using <strong>hg diff</strong>- the diference between <strong>tags</strong> (a release for us).</p> <p>It was all fine until now, that we introduced branches in our workflow, to let a developer work on a radical changes in the code, and keep contributing in daily small changes which are published to production.</p> <p>The problem is that <strong>hg diff</strong> doesnt support Branches <a href="http://www.selenic.com/pipermail/mercurial-devel/2009-February/010429.html" rel="nofollow">(or seems that its still in development)</a></p> <p>So, which would be the best way to do it ? some options we have been thinking about are:</p> <ol> <li>Mounting FTP as a Volume localy (using MacFuse or similar) and use mercurial push/update But would be so sloooow.</li> <li>Play around with Bundles and see if they can help us but seems quite complicated</li> </ol> <hr> <h2>Example</h2> <pre><code>$ hg tag qa-001 /* init to see diferences QA Site */ $ hg tag prod-001 /* init to see diferences Production Site */ $ hg ci -m "working on a stable feature" $ hg tag qa-002 $ hg ci -m "change on the stable feature" $ hg tag qa-003 $ hg tag prod-002 $ hg ci -m "another change on stable" $ hg pull ../CentralRepo /*Where there is another Branch with unstable files*/ </code></pre> <p>With last operation, a new head is created , so now there are two heads (stable, and unstable branch)</p> <pre><code>$hg diff -r qa-003 -r tip </code></pre> <p>The Result of <strong>hg diff</strong> is showing up the Unstable Files without doing the merge</p> <p>Many Thanks for your comments</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload