7 ms·
I tried using git for several weeks now and still cant manage to do the simplest things, like maintain a work repo and a sync repo and then pull/merge between t
by DrCatbox 14y ago
I tried using git for several weeks now and still cant manage to do the simplest things, like maintain a work repo and a sync repo and then pull/merge between them before pushing upstream from sync. It feels like I have to know the internals of git workings just to perform a simple action, and I need to know all the side-effects of its actions, and how to fix those as well. With mercurial all the commands I need to know are hg log, diff, incoming, outgoing, pull, update push and merge. With git I need to know at least two or three flags for each command where each flag is really special to that command and using/not using it changes everything. With mercurial I just know -p -r and -l for limits thats it.
I hate git with a passion now. Its like forcing everything through its world view, for the tinies action it barks are you with insane messages.
Version control systems are supposed to model commits or sets of changes on a repo, not model and show you their own internal representation of what it thinks about my code.
Also Ive noticed most git tutorials really simple things (like this is how you do cvs but now with git), while "the rest" is left to some black ninja voodo magic expert dudes who "get" it.
And this is just another tutorial to work in a very specific environment using git.
Im so glad we use mercurial at work right now.
- huherto 14y agoMay be I was so used to subversion. I understand that git is more flexible and powerful, but it makes me feel dumb. Specially because so many smart people love it.
- lnguyen 14y agoIf you haven't seriously used branches before, git can be a bit hard to wrap your head around. And trying to map it back to what you're familiar with in svn adds to the frustration. The best thing to do is create some "play" git repositories and see what happens when you run any command. You can also run "git clone" on local directories to mimic actual remote repositories without having to set anything up. Don't worry about screwing anything up as you can just delete the directory and start over.
- ColdAsIce 14y ago"Don't worry about screwing anything up as you can just delete the directory and start over." Thats a problem. git is version control, you are not, you must not always for every command keep track of whats happening in your directories so you can attempt some magic at resolving problems, and now reverting back to mv and cp for managing something git should do really well. The problem most often is not remote repositories, as you say there should be no distinction if the repo is cloned from a server or from another directory. But there is. And a tons of tutorials all go through hoops to explain remoting vs local stuff.
- MBlume 14y agoTo be fair, I spent a few days trying to wrap my head around Mercurial so I could commit to PyPy, lost a bunch of code, and switched to just using the hg-git bridge. It's mostly about what you're used to.
- gnosis 14y agoMercurial is far from being the only alternative to git. For instance, have you tried bzr?
- sopooneo 14y agoGit is the first version control system I've ever really used, and I'm starting to like it a lot. However, I agree that the interface is horrible. It is offensive how bad the CLI is.