Earlier quoted context omitted.
Why would Git be any better? They're both tools that ultimately accomplish the same thing.
git rebase -i, git reset --hard, git checkout
Python now uses Mercurial
41–50 of 114 posts
Re: Python now uses Mercurial
#42It's interesting that each major web language seems to have paired off with a different VCS: - Python + Hg - Ruby + Git - PHP + ...SVN?
Re: Python now uses Mercurial
#43It's interesting that each major web language seems to have paired off with a different VCS: - Python + Hg - Ruby + Git - PHP + ...SVN?
PHP + ...SVN? Gotta say, they deserve each other.
Re: Python now uses Mercurial
#44But why are they using Mercurial and not Git? I want to what are the advantaged for them to choose Hg.
I find the way your phrase that question interesting. Git and Mercurial are nearly identical in terms of functionality, to the point that converting back and forth between them is pretty trivial. (Example: here's Git's repository in Mercurial https://mirrors.kilnhg.com/Repo/Mirrors/From-Git/Git ) The only real difference between the two are the ecosystems. Mercurial, being written is Python, is very portable and easi…
$ git rev-list --merges --parents --tags | awk '{print (NF-1)}' | sort | uniq -c
4409 2
22 3
5 4
3 5
1 6
So there's been a total of 31 octopus merges compared to 4409 typical two-parent merges.Re: Python now uses Mercurial
#45Earlier quoted context omitted.
In all fairness, I'd like to point out it's quite possible to make Git work on Windows. If one can adjust the path, it is also reachable through the same command line Windows folks are used to.
As far as I know, Git was a lot more awkward to use on Windows when they started discussing this move a few years ago.
Re: Python now uses Mercurial
#46Earlier quoted context omitted.
PHP + ...SVN? Gotta say, they deserve each other.
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.
Re: Python now uses Mercurial
#47Git and Hg accomplish essentialy the same thing. The platform support and tool/utility support for Mercurial on windows in important to note. I decided to choose Mercurial as the VCS for my 'work'. This was a team that had no prior exposure to VC before. And works in a mixed environment. Hg follows the 'one true way' philosophy of Python; so there's just a single command to learn for each task. Plus, Bitbucket's new…
As someone who hasn't used Hg before, I'm curious -- what are some examples of Git commands that are better executed in Hg?
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 use it (by contrast, Mercurial is a pure python app, and is ultra-portable). 2) Coming from the Linux community, it seems a little heavy weight for small projects. Some command require what seem like extra steps on Git as compared to Hg. For example, Git requires that you do a "git add" before doing a "git commit". Mercurial assumes that you want to add all the changed files in your repo (or you can list the files needed in a commit).
For complex scenarios, Git's system does provide a bit more control in packaging up exactly the set of changes you want in each atomic revision.
Besides these minor historical differences, I think they both are excellent, and are really a matter of personal or team preference.
Re: Python now uses Mercurial
#48Earlier quoted context omitted.
http://www.python.org/dev/peps/pep-0374/#why-mercurial-over-... Basically, they wanted a tool that was equally usable on all platforms, which excluded Git on Windows. They also wanted something written in Python, of course, although they would have sacrificed that in the interest of pragmatism.
In all fairness, I'd like to point out it's quite possible to make Git work on Windows. If one can adjust the path, it is also reachable through the same command line Windows folks are used to.
Re: Python now uses Mercurial
#49Re: Python now uses Mercurial
#50Git and Hg accomplish essentialy the same thing. The platform support and tool/utility support for Mercurial on windows in important to note. I decided to choose Mercurial as the VCS for my 'work'. This was a team that had no prior exposure to VC before. And works in a mixed environment. Hg follows the 'one true way' philosophy of Python; so there's just a single command to learn for each task. Plus, Bitbucket's new…
As someone who hasn't used Hg before, I'm curious -- what are some examples of Git commands that are better executed in Hg?
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` in many other systems, etc.
These are just simple cases, but there's loads of situations where you have to find out yet another command in git / yet another parameter to do what you want. Hg has better defined defaults and the whole list of commands looks like it was designed, while git looks like everyone just added what they needed... Auto-expanding commands in hg is also nice - I hate it when git tells me 'ci' or other short name is not a command (yeah, I know about aliases).
In some situations I also think that git does exactly what it's programmed to do... which isn't always the same as - what workflow makes sense in a specific case. For example `branch` creates a branch, but you still need to do `checkout` (or just `checkout -b ...`). Why? What's the common use case for creating a branch you're not going to work on? Which behaviour do you expect more often?
All in all, not the end of the world, but when you use the tool every day, it becomes annoying, especially if you see it can be done better.