Shared publicly  - 
 
I'm sure renaming a 4MB file in Hg shouldn't cause the next push to be 9MB. I even did it in what I assume to be the "proper" way, using rename via TortoiseHg in Explorer instead of just renaming the file "manually". Shouldn't that just be a case of saying "file X is now called Y"? Ah well.
3
1
Santiago L. Valdarrama's profile photoPaul Nathan's profile photoJosh Close's profile photoJon Skeet's profile photo
21 comments
 
You, sir, have a beautiful faith in the logic and consistency of software.
 
Well I thought that kind of thing was what "recent" source control systems were meant to be good at.

And to head off the inevitable comment, yes, I'm sure Git would have done a better job. Last time I looked it was still considerably less pleasant to use on Windows than Hg though...
 
I haven't had too many complaints with Git on Windows. TortoiseGit works pretty well. If you want to just use the command line, I don't think there's much of an issue at all.

I've never done a git rename on anything before. In fact, I didn't even think it existed... I'll have to check now...
 
for git on windows I use GitExtensions (http://code.google.com/p/gitextensions/) because I'm just tired of shell extensions that pollutes my context menu. If you know your ssh and private/public keys kungfu, it should be no problem to setup.
 
+Josh Close git does implicit rename tracking, there actually isn't a way to explicitly rename a file. You just change the name, commit it, and git automagically matches it to the previous file with the same (or nearly the same) contents.
 
Coming from a "SVN" mindset, Hg is giving me a hard time after a couple of days reading about it. Will see in the coming weeks when I get to actually use it.
 
Was the new name longer than the old name? Solved!
 
Latest version of Mercurial (1.9) can detect renames. Go upgrade, go!
 
A rename is a "delete" and "add"; it's one of the weaker spots of hg. I didn't see the rename detection in the 1.9 changelog... I sure hope they just missed it. Not sure why it'd 'double' the size of the push though. :-/
 
Git works pretty good on windows at this time. Give it another try! And GitHub is like the Google of source hoster. No way around it. 
 
I used Git (and GitHub) before in Protocol Buffers, and found it a pain. I didn't find any of the purported benefits of GitHub, and since moving to Hg on Google Code I've found it easier to collaborate with people.

One thing I missed in Git was a Visual Studio plugin along the lines of VisualHg and VisualSvn. It's nice not to have to switch tools in order to commit etc.

I'm becoming more comfortable with Git now that I'm using it at work, but I still find Hg just simpler in general.
 
There is actually a visual studio plugin for git, and I thought it worked "well enough".
I'm quite sure there is lots of room for improvement, but that applies to anything, really.
 
+Morten Nilsen Got a link for it? Maybe it's come on the scene since last time I looked...
 
Could be that it's fixed in later versions, but when I tried that source control provider for git I found that it updated the statuses in the solution explorer by constantly stat'ing every single file in the solution. For a solution of any size, this is unacceptable.
 
Great thread of links and info. Thanks everyone.
 
+Jon Skeet Personally, I find that the more I code, the less I like version control addins. We use VS2010 and SVN at work, and I'm happily using git-svn from the command line. The command line interface is portable and you only have to learn it once; IDE plugins for VCSes are a dime a dozen, all different, and each have to be learned. I'd rather apply pre-existing knowledge than spend time learning something "easier."
 
+Chris Howie Absolutely agree with you. I've found myself reducing all this visual "simplifiers" of any kind several months ago.
 
I find the visual tools helpful for perusing diffs etc. So long as everyone uses the same terminology (which is typically the case if the plugin is VCS-specific, e.g. VisualHG) I don't find it particularly hard to learn a new GUI. (Learning the best way of working with a particular tool is a different matter.) It's always nice to be able to drop down to the command line of course, but I wouldn't want to have that as my only option.
Add a comment...