Subject: Re: git-svn: problem with svn cp trunk/subdir tags/subdir_1.0

From: Ilya Basin <[email-masked]>
Date: Mon, 29 Apr 2013 17:00:32 +0400

IB> After fixing --preserve-empty-dirs plus --stdlayout a new problem
IB> arised:
IB> When creating a tag or branch from a subdir, a disjoint branch
IB> is created. Then git-svn re-imports the commits using this dir as
IB> strip path.

IB> Why? I would instead keep the current commit as parent, delete
IB> everything except the subdir and move its contents to root directory.

IB> During this re-import the variable %added_placeholder is not up to
IB> date. Because the branch is disjoint, this variable should be empty in
IB> the beginning, but it's not.
IB> Because of that git-svn tries to delete non-existent .gitignore files
IB> and dies.

IB> I think, if a disjoint branch is created, %added_placeholder should be
IB> pushed and cleared. A new set of paths starting with "trunk/" will be
IB> added to it during re-import.
IB> When re-import is done, we should translate the paths to
IB> "tags/subdir_1.0/" and merge with the original %added_placeholder.

A simpler approach would be to store paths in %added_placeholder
already translated from "trunk/subdir/" to "tags/subdir_1.0/".
But in the beginning of re-import Fetcher doesn't know the new branch
name.

--