From: Thomas Rast Date: Mon, 29 Mar 2010 09:00:12 GMT Subject: Re: Three issues from a Subversion-to-git migration Message-ID: <201003291100.13043.trast@student.ethz.ch> In-Reply-To: <20100326120906.F03BB20CD21@snark.thyrsus.com> Eric Raymond wrote: > 2. The git-svn migration logic does not handle unmodified SVN tag > trees well. The problem here is that git-svn is designed to handle incremental updates, where it can't know whether some insane SVN user decides to modify the tag later on. I've used the following hack to make real tags out of SVN "tags": git for-each-ref --format="%(refname)" refs/remotes/tags/ | while read tag; do GIT_COMMITTER_DATE="$(git log -1 --pretty=format:"%ad" "$tag")" \ GIT_COMMITTER_EMAIL="$(git log -1 --pretty=format:"%ce" "$tag")" \ GIT_COMMITTER_NAME="$(git log -1 --pretty=format:"%cn" "$tag")" \ git tag -m "$(git log -1 --pretty=format:"%s%n%b" "$tag")" \ "${tag#refs/remotes/tags/}" "$tag" done Disclaimer: it worked last time I used it. Haven't checked if it got dusty since. -- Thomas Rast trast@{inf,student}.ethz.ch