Note that there are some explanatory texts on larger screens.

plurals
  1. POmercurial workflows when collaborating with people who make errors
    primarykey
    data
    text
    <p>I need to collaborate on a Mercurial repository (let's call it "foo") with some people who are novices at version control in general, Mercurial in particular.</p> <p>I am trying to come up with a workflow that will enable us to use Mercurial without a lot of extra effort on either their end (confusion) or my end (cleanup).</p> <p>My concern is that as novices I need to expect them to make errors, and I need to allow them to do so in a controlled way, otherwise they won't use the tool at all because they're too scared. But I don't want a bad change to pollute the repository unnecessarily.</p> <p>I do not expect them to be able to merge properly or to use the <code>mq</code> extension. This is not a matter of underestimating them, instead it is a realistic assessment given past experience with SVN and my own experience with Hg.</p> <p><strong>Which of the following approaches would make the most sense? Or if there's a better approach, what is it?</strong></p> <ol> <li><p>We have a repository <code>foo-submit</code>, read/writable by all, and a repository <code>foo-trunk</code>, readable by all but writable by admins. Users pull from <code>foo-trunk</code>, and push changes to <code>foo-submit</code>. Cleanup: If I find a good change, I let it through as is; if I find a bad change, I "bypass" it by merging with the previous version.</p></li> <li><p>We have a repository <code>foo-trunk</code> readable by all, writable by admins. Each user is responsible for maintaining their own clone which is read-accessible to the rest of the team. When someone wants to push a change, they let me know and I pull it from their repository, with proper cleanup as necessary (same as in #1)</p></li> <li><p>We have a repository <code>foo-dev</code>, read/writable by all, and a repository <code>foo-trunk</code>, readable by all but writable by admins. Users pull/push to foo-dev, and work in named branches if they need to do extensive development. I am responsible for performing merges and cleanup. The <code>foo-trunk</code> repository is merely for having a "clean" copy that has branches where the tip is always in a good state.</p></li> </ol>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

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