[PATCH 2 of 4] clone to master bookmark if available

Victor Suba vosuba at gmail.com
Thu Nov 10 20:01:17 CST 2011


Hi Arne,

> In that respect git is actually not truly distributed, because if you
forgot
> to pull an important branch before going offline, you’re out of luck. If
you
> don’t explicitely request everything, you rely on a central server.
>
> In Mercurial that problem is far less likely, because it is not the
default
> workflow.

I don't think that's accurate, so please don't shut this idea because of
a misconception.

Git will fetch everything unless you explicitly tell it to fetch only a
specific branch,
so there's no risk of not having every branch from the remote when you go
offline
unless you explicitly tell git to fetch only a specific branch.

> In Mercurial you normally synchronize everything, so there’s no danger of
> accidently forgetting to push something important.

IMHO the opposite is true.

> If you want to only synchronize a part, you say so via hg pull -r <rev>.
> In that case all revs not needed for that rev are ignored.

Think about it, this is the recipe for forgetting to pull what you need and
not having it when you go offline.

In Git, thanks to the "foreign" branch heads being fetched over and not
automatically
synchronized (unless you enable tracking), you can fetch everything and
synchronize what you want to your local branches later, so you don't have
to be
worried about cherry-picking your pulls and then forgetting something.

For the "push" case, "git push" will automatically push all tracking
branches, but
in my experience I almost never want to do that. Usually I explicitly push
individual
branches.

Cheers,
Vic
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20111110/c77988f5/attachment.html>


More information about the Mercurial-devel mailing list