3 ms·
I feel like people's opinion of git's usability is lower than what it actually is. Certainly, it's got a lot of different switches and stuff, but since its dat
by chousuke 10y ago
I feel like people's opinion of git's usability is lower than what it actually is.
Certainly, it's got a lot of different switches and stuff, but since its data model is so simple, you can always understand what it's doing to your data. So you can read a description of what a switch does, and then understand exactly what will happen when you use it.
(The exception to this is automatic merge conflict resolution with rerere, which is just magic to me. But it's a bonus feature anyway)
For me, as a long time git user, git's UI and UX is approximately a bajillion times better than something like SVN, which can barely even do half the things that I use every day in git.
Maybe I haven't just dug deep enough into Subversion's manual, but can you tell me how to do the equivalent of "git log -p"? Last time I checked (SVN 1.8) that's not very trivial. Or how to revert a commit? IIRC that requires a merge.
So at least compared to subversion, git enables a workflow that was previously too much work, and gives me a better tool for working with version-controlled text data.
Mercurial is another thing I find puzzling, and I'm honestly interested why it is that people find it so much easier to use than git. I'm so used to working with throw-away branches that hg's default branching model just feels needlessly difficult to me, and good support for managing branches is the most important feature of a VCS, since any change you ever make is automatically a branch from the base. In git, this feels natural, since branches are a feature of the underlying data model, not something treated specially.
- Nemcue 10y agoExcept very few actually take the time to understand the data model..
- RJIb8RBYxzAMX9u 10y ago> [C]an you tell me how to do the equivalent of "git log -p"? Last time I checked (SVN 1.8) that's not very trivial. svn log --diff, added in 1.9. Also doable with a little (est. < 10 lines) of shell scripting. > Or how to revert a commit? IIRC that requires a merge. git and svn disagree on whether history should be permanent or not.