Re: git-svn: problem with svn cp trunk/subdir tags/subdir_1.0
- From
- Ilya Basin <basinilya@gmail.com>
- Date
- Apr 29, 2013, 13:00 UTC
- Message-ID
- <1531127990.20130429170032@gmail.com>
- In-Reply-To
- <1826029946.20130429164645@gmail.com>
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.