You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by kf...@collab.net on 2004/02/14 23:10:06 UTC
Re: [DEFECT] cvs2svn.py does not honor --no-prune
Ling Li <li...@caltech.edu> writes:
> version: 0.37 (rpm from fedora core development repository)
>
> command I used:
> cvs2svn --create --no-prune -s repos --trunk-only cvs_repos
>
> There were only 3 revisions, but no empty directories were saved in
> the resulted svn repos.
If you asked it not to prune, and now there are no empty directories,
it sounds like it did exactly what you wanted :-).
But, if you would post a concrete example of what you expected to see
vs what you did see, then we could answer your question better.
By the way, this sort of question is more appropriate for
users@subversion.tigris.org, so I've redirected it there. No big
deal, just letting you know for next time.
-Karl
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: [DEFECT] cvs2svn.py does not honor --no-prune
Posted by "C. Michael Pilato" <cm...@collab.net>.
Ling Li <li...@caltech.edu> writes:
> I am confused by your comment. cvs2svn help gives
>
> --no-prune don't prune empty directories
>
> So when --no-prune is used, the empty directories in CVS repository
> should be included in the SVN repository. Am I right? But what cvs2svn
> did was not.
Ah. This is likely a bug in cvs2svn. CVS (and the RCS on which is
built) does not version directories -- directories are just containers
for the file data that *is* versioned by CVS. Unless I'm mistaken,
cvs2svn only creates directories if they are needed as intermediate
path pieces toward some versioned file. If you have directories in
your CVS repository that are empty (have to ,v files at all), then
yes, I would expect cvs2svn to behave in the way you are seeing it
behave. I suppose we could, in --no-prune mode, forcibly create empty
directory structures where we lack them compared to the original CVS
repos.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: [DEFECT] cvs2svn.py does not honor --no-prune
Posted by Ling Li <li...@caltech.edu>.
kfogel@collab.net wrote:
> I'm sorry, solar flares affecting my brain, don't know what I was
> thinking.
:-)
> (I see that Mike Pilato followed up, I'll go read that now.)
We may use the Unix time (the time you can see from "ls -l") of the
empty directories as their committing time, assuming they have not been
modified after their creation (since they are empty :-).
I can see this workaround might have a little timing problem. For example,
-- D1 (dir)
+- F1 (file)
+- D2 (empty dir)
D2 might have an early creation time than the first commit time of F1. I
guess (since I haven't read a bit of svn's source code) D1 is converted
into SVN using the same (first) commit time as F1. So we might need to
commit D1&D2 first, earlier than F1.
--Ling
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: [DEFECT] cvs2svn.py does not honor --no-prune
Posted by kf...@collab.net.
Ling Li <li...@caltech.edu> writes:
> Hi Karl,
>
> I am confused by your comment. cvs2svn help gives
>
> --no-prune don't prune empty directories
>
> So when --no-prune is used, the empty directories in CVS repository
> should be included in the SVN repository. Am I right? But what cvs2svn
> did was not.
I'm sorry, solar flares affecting my brain, don't know what I was
thinking.
(I see that Mike Pilato followed up, I'll go read that now.)
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: [DEFECT] cvs2svn.py does not honor --no-prune
Posted by Ling Li <li...@caltech.edu>.
kfogel@collab.net wrote:
> Ling Li <li...@caltech.edu> writes:
>
>>command I used:
>>cvs2svn --create --no-prune -s repos --trunk-only cvs_repos
>>
>>There were only 3 revisions, but no empty directories were saved in
>>the resulted svn repos.
>
> If you asked it not to prune, and now there are no empty directories,
> it sounds like it did exactly what you wanted :-).
Hi Karl,
I am confused by your comment. cvs2svn help gives
--no-prune don't prune empty directories
So when --no-prune is used, the empty directories in CVS repository
should be included in the SVN repository. Am I right? But what cvs2svn
did was not.
> But, if you would post a concrete example of what you expected to see
> vs what you did see, then we could answer your question better.
My CVS repo looks like
-- dirA
|- README
|- dirA1 (empty)
|- dirA2 (empty)
-- dirB
|- File1
|- File2
Very simple. Here's the output from
cvs2svn --create --no-prune -s repos --trunk-only cvs_repos
... several lines for passes 1, 2, 3, & 4 ...
----- pass 5 -----
loading cvs2svn-dump into repos
<<< Started new transaction, based on original revision 1
* adding path : trunk ... done.
* adding path : trunk/dirA ... done.
* adding path : trunk/dirA/README ... done.
------- Committed revision 1 >>>
<<< Started new transaction, based on original revision 2
* adding path : trunk/dirB ... done.
* adding path : trunk/dirB/File1 ... done.
------- Committed revision 2 >>>
<<< Started new transaction, based on original revision 3
* adding path : trunk/dirB/File2 ... done.
------- Committed revision 3 >>>
pass 1: 0 seconds
pass 2: 0 seconds
pass 3: 0 seconds
pass 4: 0 seconds
pass 5: 1 seconds
total: 1 seconds
Empty directories dirA/dirA1 & dirA2 were not committed in SVN repo.
Thanks!
--Ling
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org