Live data from Hacker News

Python now uses Mercurial

hg.python.org

71–80 of 114 posts

Re: Python now uses Mercurial

#71
post #59

Earlier quoted context omitted.

I meant "git reset --hard" as a prefix for useful . Can hg set the current branch to point anywhere in time? Does histedit do exactly what "rebase" does? Does it also work with "--onto" and other rebase features?

Regarding resetting: hg up -C will give you a clean checkout of that ref, discarding any local changes.

(Sorry about the accidental downvote. Arrows + phone got me again.)

Re: Python now uses Mercurial

#72
post #26
post #7

Interesting to note that bzr got close to mercurial in the votes in spite of this being bzr version 1. Version 2 is much improved in speeds (comparable to git/hg).

I myself am quite partial to bzr espeically since tortoise-bzr uses my favorite diff tool by default http://doc.bazaar.canonical.com/explorer/en/guide/qbzr/qdiff... I would be interested to know about other's impressions of bazaar and why most people seem to share the same sentiment towards it as those at pycon that year While no one said they did not want bzr chosen, no one said they did either.

I have been using bzr for 2+ years now. For personal projects I am quite happy with bzr+launchpad. At work, we have been using bzr on Linux.

The move from 1.x to 2.x brought in significant performance and memory improvements.

Re: Python now uses Mercurial

#73
post #52
post #47

Earlier quoted context omitted.

I use both git and hg - and like both of them (though I have more experience with hg). Github is far and away the best hosted distributed version control service, with a constant stream of innovative features for open-source developers over the last 2 years. Git has had two main drawbacks in my mind. 1) Much of it is implemented as script commands, and I think it still requires you run an emulated shell in Windows to…

The differences on commit both have good arguments. hg is going for ease of use and is very much like the non-dvcs's that came before it, like CVS and Subversion where a commit commits all changed files. git add just adds the file to the index and stages it for commit, this means you can group files logically depending on what has changed, you can even using git add -p have only certain parts of a files modifications…

Exactly. And if you know that you just want the SVN/HG commit-everything, just add a -a. Pretty intuitive.

Once you get used to having the ability to create arbitrary commits from a huge changeset, you'll find it aggravating when everyone else commits "3 bug fixes to core, swapping out a style sheet, and cleanup in database code" :)

Re: Python now uses Mercurial

#74
post #28

Earlier quoted context omitted.

"First, git's Windows support is the weakest out of the three DVCSs being considered which is unacceptable as Python needs to support development on any platform it runs on." This is FUD! The support for git on windows is pretty good and there is nothing obstrusive in it. You can use git on Windows fairly well. Sad to see this kind of comment written by smart people.

Last time I tried TortoiseGit, adding a file either didn't work or just crashed hard. Mercurial, on the other hand, just got TortoiseHg 2.0, which is a pleasure to work with. It is true that git works on Windows, but that doesn't mean it works well.

Just curious, have you ever tried GitCheetah? https://git.wiki.kernel.org/index.php/MSysGit:GitCheetah

I've never experienced the crashes you describe but I've never used Tortoise either. YMMV, I suppose.

Re: Python now uses Mercurial

#75

Earlier quoted context omitted.

You know, comments like that disparage by implication anyone who finds value in PHP or SVN. That's a big chunk of the development community. It tears people apart rather than bringing them together. Maybe you should redirect your energy from snark and criticism toward something more constructive.

You know, comments like that disparage by implication anyone who finds value in PHP or SVN. Maybe if we disparage them enough they'll switch to a real programming language and version control tool.

Real programming language as in a language that powers a large chunk of the most visited web sites on the internet?

I don't do any PHP myself and my few forays into it didn't leave me impressed but I don't see how you can disparage it as not a "real language".

Re: Python now uses Mercurial

#76
post #40

Earlier quoted context omitted.

As someone who hasn't used Hg before, I'm curious -- what are some examples of Git commands that are better executed in Hg?

No specific commands really, but I think the whole hg UI is just more consistent. I use both, yet with git I have to revert to `man` almost every day :/ Compare: `git branch xxx / git branch -a`, `git tag xxx / git tag -l`, `git show-ref --heads` To: `hg branch xxx / hg branches`, `hg tag xxx / hg tags`, `hg heads` There are also "duplicates" that I'm not sure why aren't folded into one command: `show-branch/branch`,…

  `show xxx` which is `diff -c xxx`
There is a subtle difference. git-show is meant to show an object. A commit is an object, but so are other things. A more descriptive name would be 'git show-object.'

Re: Python now uses Mercurial

#77
post #59

Earlier quoted context omitted.

hg histedit, hg revert, hg update -r{any revspec}

I meant "git reset --hard" as a prefix for useful . Can hg set the current branch to point anywhere in time? Does histedit do exactly what "rebase" does? Does it also work with "--onto" and other rebase features?

hg branches are entirely different from git branches, so resetting them in that way doesn't make sense. The closest approximation - bookmarks - can indeed be reset (hg bookmark -f).

histedit does a variety of things; I'm not sure if it covers all of rebase's branches. Mercurial does also have a rebase facility now as well.

Re: Python now uses Mercurial

#79
post #40

Earlier quoted context omitted.

As someone who hasn't used Hg before, I'm curious -- what are some examples of Git commands that are better executed in Hg?

No specific commands really, but I think the whole hg UI is just more consistent. I use both, yet with git I have to revert to `man` almost every day :/ Compare: `git branch xxx / git branch -a`, `git tag xxx / git tag -l`, `git show-ref --heads` To: `hg branch xxx / hg branches`, `hg tag xxx / hg tags`, `hg heads` There are also "duplicates" that I'm not sure why aren't folded into one command: `show-branch/branch`,…

There have been times that I've created a branch just to have a stopping point to which I can go back, but I wasn't going to do any work on it, at least not yet, like two choices on how to re-factor something, try one, if it fails try the other, but keep both around for testing.

Re: Python now uses Mercurial

#80
post #52

Earlier quoted context omitted.

The differences on commit both have good arguments. hg is going for ease of use and is very much like the non-dvcs's that came before it, like CVS and Subversion where a commit commits all changed files. git add just adds the file to the index and stages it for commit, this means you can group files logically depending on what has changed, you can even using git add -p have only certain parts of a files modifications…

Exactly. And if you know that you just want the SVN/HG commit-everything, just add a -a. Pretty intuitive. Once you get used to having the ability to create arbitrary commits from a huge changeset, you'll find it aggravating when everyone else commits "3 bug fixes to core, swapping out a style sheet, and cleanup in database code" :)

Unfortunately people working with git at work are still doing exactly that. Not sure how to make them stop either, since so far telling them it is wrong hasn't helped ...
Post reply on HN