Subject: | svk removing files NOT under revision control |
Don't remember the version something over the 1.xx series.
The log says it all.
I was trying to push svk company wide (hundreds of people) when this
happened. I can accept this kind of errors (not eften) for my hobby
projects but this is completely unacceptable when serious buisiness is
depending on the revision control tool, useless to say it killed the
very idea of using svk at a bigger scale. This week svk is going to be
shut down and the project moved to ClearCase (not only because of that
error). Pitty, I liked svk.
Please, please, add tests for the 'rm' command or tell me what error I made.
Subject: | svk_rm.txt |
### Here is the log of the commands I ran. I've added some annotations which should be obvious
[nadim@nadim perl_modules]$ svk depotmap -l
Depot Path
============================================================
// /home/nadim/.svk/local
[nadim@nadim perl_modules]$ svk co // rev_pbs
Syncing //(/) in /devel/perl_modules/rev_pbs to 129.
A rev_pbs/local
A rev_pbs/local/PBS
A rev_pbs/local/PBS/trunk
... a bunch more files ...
A rev_pbs/local/VIP/trunk/vip_test2.pl
A rev_pbs/local/VIP/trunk/README
### I actully did RTFM first, it said "Remove versioned item"
[nadim@nadim perl_modules]$ svk help rm
NAME
delete - Remove versioned item
SYNOPSIS
delete [PATH...]
delete [DEPOTPATH...]
OPTIONS
-K [--keep-local] : do not remove the local file
-m [--message] MESSAGE : specify commit message MESSAGE
-F [--file] FILENAME : read commit message from FILENAME
--template : use the specified message as the template to edit
--encoding ENC : treat -m/-F value as being in charset encoding ENC
-P [--patch] NAME : instead of commit, save this change as a patch
-S [--sign] : sign this change
-C [--check-only] : try operation but make no changes
--direct : commit directly even if the path is mirrored
ALIASES
del, remove, rm
### time to remove ./rev_pbs/ and all that's under
[nadim@nadim perl_modules]$ svk rm rev_pbs/
D cpan-faq.html
### insert another 12_000 files here, all this takes under a second of course
D Text-Editor-Vip/_build/prereqs
D Text-Editor-Vip/_build/cleanup
Can't remove file /devel/perl_modules/PerlBuildSystem/blib/lib/auto/PBS/WatchClient/autosplit.ix (Permission denied) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules/PerlBuildSystem/blib/lib/auto/PBS/WatchClient (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules/PerlBuildSystem/blib/lib/auto/PBS (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules/PerlBuildSystem/blib/lib/auto (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules/PerlBuildSystem/blib/lib (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules/PerlBuildSystem/blib (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules/PerlBuildSystem (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
Can't remove directory /devel/perl_modules (Directory not empty) at /usr/lib/perl5/vendor_perl/5.8.7/SVK/XD.pm line 743
### here I'm nervous, very nervous
[nadim@nadim devel]$ tree ../perl_modules/
perl_modules/
`-- PerlBuildSystem
`-- blib
`-- lib
`-- auto
`-- PBS
`-- WatchClient
`-- autosplit.ix
6 directories, 1 file
[nadim@nadim perl_modules]$ svk help rm
NAME
delete - Remove versioned item
SYNOPSIS
delete [PATH...]
delete [DEPOTPATH...]
OPTIONS
-K [--keep-local] : do not remove the local file
-m [--message] MESSAGE : specify commit message MESSAGE
-F [--file] FILENAME : read commit message from FILENAME
--template : use the specified message as the template to edit
--encoding ENC : treat -m/-F value as being in charset encoding ENC
-P [--patch] NAME : instead of commit, save this change as a patch
-S [--sign] : sign this change
-C [--check-only] : try operation but make no changes
--direct : commit directly even if the path is mirrored
ALIASES
del, remove, rm
### here I'm extremely upset that a command that should "Remove versioned item" and given
### a path, just erased NON VERSIONED ITEMS in a directory that was NOT given as path