git-svn

Anyone watching digikam's commit messages (I dont know if that's anyone except the core team) might have noticed that since some time I tend to commit in bursts, several within a few seconds, but only a few times a week. The reason I am using git-svn now for my local working copy.

I started with that when I was on holidays and had no internet connection for two weeks. Then git-svn allowed me to commit offline, creating a de-facto local branch and merging later.
I really like this. I can commit when I want, before things are ready to publish, and complete it later, still having good commit messages and splitting the commit so that the others can still review and the patch does not get overly big.

My favorite killer feature of git is: "git grep". It is really fast, much faster than simply grepping on the svn source directory. I dont know why, but I like that even more.

One annoying point in the beginning was the "svn up" equivalent. "git-svn rebase" requires all local changes committed, which "svn up" does not. Git's features to the rescue: Create a temporary commit, rebase, and reset the commit afterwards.
I added this to my ~/.bashrc:

#drop-in replacement for svn up
function git-svn-up {
git-commit -a -m "Temporary commit" && git-svn rebase && git-reset --mixed HEAD^
}

#use after you have resolved conflicts
function git-svn-rebase-continue {
git-rebase --continue && git-reset --mixed HEAD^
}

which SVN repository

I'm just curious: which SVN (sub-)repository exactly did you clone with git? svn://anonsvn.kde.org/home/kde/trunk/extragear/graphics? svn://anonsvn.kde.org/home/kde/trunk/extragear/graphics/digikam?