
Thomas Heller wrote:
svn update is all you need. ever. ... you won't look back to git, and enjoy "svn up" and "svn commit"
these statements give me the impression you have actually not yet walked in the shoes of a branch maintainer / integrator; i don't see how you would do that without at least 'svn merge'. as such, i'm not sure if you have experienced the problems of merging / integrating a development line first hand and can appreciate the conceptual advantages git has to offer in that area. Thomas Heller wrote:
There are conflicts from time to time.
are you talking about conflicts you get after an svn up ?? those are certainly not the reason why DCVSs exist - but git helps with that, too ;-) Thomas Heller wrote:
Man up resolve them.
i don't know the details of how things are run in boost, but in my experience, the job of an integrator is the one with the worst responsibility to appreciation ratio in a software project: if they screw up, everyone will notice due to the bad release; if they deliver 100%, they rarely ever get the praise they deserve. i've seen companies where developers who have fallen from favor with management were forced onto the integration chair until they either resign or go mad. telling them to man up without having been down that road in a high profile commercial or large, popular open source project is... not something they will like to hear. of course you can not know this, but the mere memory of this situation still makes me twitch. i do hope that doesn't show in my tone, my apologies if it does. Thomas Heller wrote:
The git userinterface is just a pain, i regularly get confused and have no idea what to do. ... I regularly mess up my local repository.
I find myself doing a lot of 'git status' in a version-controlled folder which gives me info like host:folder user$ git status # On branch some_feature_branch # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: main.cpp # or host:folder user$ git status # On branch some_feature_branch # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: main.cpp # one single command and the tool tells you what you could do next. how much simpler and more user-friendly could it possibly be ? Thomas Heller wrote:
Right, and there are plethora of ways to mess up local copies with git. While it might be possible to get back in a sane state it is extremely hard.
what it 'extremely hard' about 'git reset --hard' ? (no pun intended). host:folder user$ git status # On branch some_feature_branch nothing to commit (working directory clean) btw: i've come across http://githowto.com today, maybe that helps to get past the initial learning curve. # ssc