On Mon, Apr 28, 2014 at 10:29:07AM +0400, Marat Radchenko wrote:
> 20 people (programmers, artists, designers) with prior SVN
I was in a similar situation: 10 people, mostly mathematicians,
previous experience with Tortoise SVN.
I wanted to move to Git with centralized model. I call it a success:
people can do basic changes on master and also can work with
branches, if they don't want to break master. (Much better than
keeping uncommitted changes at a svn checkout.)
I avoided TortoiseGit because I thought it would make the switch more
complicated: Git does differ from SVN, and it cannot be hidden.
We use Git Extensions (Windows only frontend).
I like it, as it is very close to command-line, so it is easy for me
to provide support. It also improves the dialogs by hiding all the
advanced options; you have to click on "advanced" to get the full
When working on master, pull --rebase is a necessity:
The install procedure does set config
branch.autosetuprebase = always
(Must be done before any clone, so that all branches created after
that are set up to rebase, rtfm...)
I also told people to check "Rebase" in the pull dialog (it is
And I provided snapshots, so they immediatly call for help if they
see non-linear history.
> Problem #4: when conflict happens during rebase, mergetool shows
> user own changes as "theirs" and remote changes as "mine". And
> believe me, explaining this to users doesn't increase their
> willingness to adopt Git.
Our mergetool is Kdiff3. (Git Extensions are willing to install it;
we did that separately to get a newer 64bit version.)
Kdiff3 shows three columns; their names (BASE, LOCAL, etc.) are
confusiong, but in our case it was easy to ignore them; we had no
previous experience with merge conflicts resolving.
> Problem #6: push - reject - pull - push sequence sometimes
> transforms into a loop with several iterations and doesn't add
I told people to do "pull-push" always when they want to push.
If the pull has conflicts, then they naturally do "pull-push" again
after the conflicts are resolved.
Git Extensions has its problems, you may look at the issue tracker;
I created several reports when exploring it (login kasal).
I would mention:
If you pull on a non-tracking branch, it creates a false
origin/branchname from origin/HEAD. The bug was fixed, but there was
no release since then: so you have to live with it or you have to
build Git Extensions yourself in Visual Studio.
I had to write this in haste; hope this helps you anyway.
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html