Thomas Rast <trast@xxxxxxxxxxxxxxx>: > 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. Yes. Ideally, I suppose, git-svn (or whatever replaces it) would have behavior something like this: 1. Turn unmodified tag directories into git tags 2. Turn odified tags into branches. 3. Recognize when a formerly unmodified tag has been modified, remove the git tag, and turn it into a branch. > 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. Wow, that's ugly. But it does look like it ought to work. -- <a href="http://www.catb.org/~esr/">Eric S. Raymond</a> -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html