Peter Baumann <waste.manager@xxxxxx> wrote: > On Sun, Dec 09, 2007 at 07:24:40PM -0500, Marcus D. Hanwell wrote: > > Hi, > > > > I am quite new to git and git-svn but have been using both for my > > development work recently. I imported the Avogadro subversion repository > > (hosted on Sourceforge) using the following commands, > > > > git svn init -t tags -b branches -T trunk > > https://avogadro.svn.sourceforge.net/svnroot/avogadro > > > > git svn fetch > > > > > > The files avogadro.pro and README in the trunk/ directory appear in my > > imported git repository but not in Avogadro subversion trunk. We also had > > trunk/src/ and all its files/subdirectories appearing in the git checkout > > but not in subversion trunk. We deleted this using git and git svn which > > removed it from the git checkouts too after r858. > > > > I have been talking to Peter who confirmed this and pointed out that the > > repo was reorganised several times in the past. Please CC me on replies as > > I am not on the list. There is a copy of my git repo at > > http://platinum.cryos.net/avogadro.git/ if you would rather skip the > > import. Other than that everything has been working great. It would be good > > to get rid of this bug if possible. Let me know if there is anything else I > > can do to help. > > > > [ Eric Cc'ed, as the author of git-svn ] > > I can confirm that this looks like an import problem. > (e.g see svn log -v -r33:78 https://avogadro.svn.sourceforge.net/svnroot/avogadro) > > I did my analysis on the file /trunk/avogadro.pro, because the error > happens really early in the history so could just import up to revision 76 > to see what goes wrong. (The file gets never deleted in the import, as it > should be!) > > > > trunk/avogadro.pro is added here: > > ------------------------------------------------------------------------ > r33 | dcurtis3 | 2006-08-21 07:34:10 +0200 (Mon, 21 Aug 2006) | 3 lines > Changed paths: > A /trunk/avogadro.pro > > Does a recursive build. > > > Here the refactoring starts (a new directory not tracked by git is added): > ------------------------------------------------------------------------ > r66 | dcurtis3 | 2007-01-03 06:42:45 +0100 (Wed, 03 Jan 2007) | 3 lines > Changed paths: > A /avogadro > > Making room for libavogadro. > > > /branches is moved to /avogadro/branches > ------------------------------------------------------------------------ > r67 | dcurtis3 | 2007-01-03 06:47:11 +0100 (Wed, 03 Jan 2007) | 3 lines > Changed paths: > A /avogadro/branches (from /branches:66) > D /branches > > Making room for libavogadro > > > > > ERROR HAPPENS HERE: > ==================== > > /trunk and /tags are moved, too. > (/trunk/avogadro.pro becomes /avogadro/trunk/avogadro.pro): > ------------------------------------------------------------------------ > r68 | dcurtis3 | 2007-01-03 06:47:34 +0100 (Wed, 03 Jan 2007) | 3 lines > Changed paths: > A /avogadro/tags (from /tags:66) > A /avogadro/trunk (from /trunk:66) > D /tags > D /trunk > > Making room for libavogadro. > > The above delete/move of trunk isn't recorded anywhere in the git svn import. > 'git-svn find-rev r66' doesn't produce any output! > And later git-svn thinks that /trunk and all its files are still there, so > e.g. /trunk/avogadro.pro stays in the repo forever. Hi, Thanks for the analysis, Peter. git-svn ignores deletions to the directory we're tracking in order to represent renames when the follow-parent case is hit. Unfortunately, this never took into account the directory we're tracking reappearing later in history. I'll try to have a fix later tonight or over the weekend. > mv /avogadro/trunk/avogadro.pro /trunk/avogadro/avogadro.pro > ------------------------------------------------------------------------ > r75 | dcurtis3 | 2007-01-03 20:49:35 +0100 (Wed, 03 Jan 2007) | 2 lines > Changed paths: > D /avogadro > D /avogadro-lib > A /branches > A /tags > A /trunk > A /trunk/avogadro (from /avogadro/trunk:74) > A /trunk/libavogadro (from /avogadro-lib/trunk:74) > > Moving things around. Conforming to a more KDE-like layout in SVN. > I'm going nuts. SOrry Instead of handling the full delete of everything in r68, I think I'll make it so importing r75 will clobber all the stuff in trunk/ we ignored deleting in r68 before adding the contents of trunk/ in r75. -- Eric Wong - 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