what do I need to learn to do this task?

Adrian Klaver adrian.klaver at aklaver.com
Tue May 13 02:08:19 UTC 2014


On 05/12/2014 06:17 PM, Michael Mossey wrote:
> I'm new to Mercurial and I don't have a lot of time to devote to
> learning it (or any SCM system) in great detail, nor do I need to, so I
> am wondering if I could get some guidance about the specific things I
> need to do this task:
>
> I am part of a two developer project, something small and short-term so
> we may not have to branch very much, and I'm using Mercurial to keep us
> in sync. So far all we've done and pushed and pulled from the tip of the
> Bitbucket repo we are using.
>
> I have something else I need to do which may require branching. I work
> on two different computers, my laptop and my home desktop, and a
> Mercurial is the perfect solution for keeping them in sync (as compared
> to copying files back and forth). I don't have to remember which is the
> last machine I worked on, and I don't need to worry if I make changes on
> both machines--Mercurial will help me integrate them. However, I switch
> machines often, so if I push and pull from the central repo every time I
> do so, I will be putting a lot of changesets on it that aren't very
> meaningful (and even probably not functioning).
>
> So I figure that I probably want to do this with a second repo and also
> I want to do it on a branch. But as I barely know anything about
> Mercurial, I don't know how to structure these or what commands I'll be
> using. I'm reading O'Sullivan's book right now, but I would also
> appreciate tips from this list.
>
> My workflow will look something like this:
>
> (1) I'll check out a copy of the main Bitbucket repo
> (2) I'll work on my laptop
> (3) I'll be ready to switch to my desktop, so I'll commit changes
> (3) I'll push changes to some kind of secondary Bitbucket repo
> (4) I'll get on my desktop and pull those changes, and work
> (5) Get ready to switch to laptop; commit changes and push to secondary
> BB repo again
> (6) Continue, creating possibly a dozen small meaningless changesets
> until ready to commit a feature or intermediate feature to main BB repo
> (7) here's the trick I don't understand--somehow push and/or merge my
> changes with the main BB repo, hopefully without pushing a bunch of
> meaningless changesets onto it
>
> So basically I'm wondering how to structure things so I can do (7)

Well I avoid the whole issue by using Unison 
(http://www.cis.upenn.edu/~bcpierce/unison/) for the middle part. 
Basically you want the laptop/desktop to be the same machine and then 
push/pull from Bitbucket. I just do work on either my laptop or desktop 
and the use Unison to sync with an EC2 instance. I then sync from that 
to the other machine. So:

    ->	EC2 < -
    |            |
   \/	       \/
laptop          desktop

This way I do not have to commit until I want to and then push/pull to 
Bitbucket.



>
> In the meantime I'm reading O'Sullivan's book so I will soon be familiar
> with basic concepts--don't feel a need to explain basics.
> Thanks,
> Mike
>
>
>
> _______________________________________________
> Mercurial mailing list
> Mercurial at selenic.com
> http://selenic.com/mailman/listinfo/mercurial
>


-- 
Adrian Klaver
adrian.klaver at aklaver.com



More information about the Mercurial mailing list