Я упомянул немного подробный скрипт, но он не удалит локальное хранилище и не очистит сессию CCRC.dat:
nuke_view.pl
: вы можете использовать его для удаления всехвиды с рабочей станции (которые могут быть недоступны)
cleartool lsview -host myHostname -quick | xargs ccperl nuke_view.pl
Опция -quick
очень важна для быстрого получения списка видов для данной рабочей станции.
## This script should be used to cleanup a view when 'ct rmview' will not
## work (such as when the viewstore directory has been deleted.
##
## Note: The view storage directory will have to manually deleted if it still exists.
use strict;
#sub NukeView();
#sub DoIt();
foreach(@ARGV) {
NukeView($_);
}
##############################################################
sub NukeView {
my $view2del = $_[0];
print "Processing $view2del...\n";
my @lines = `cleartool lsview -l $view2del`;
my $tag;
my $uuid;
foreach(@lines) {
chomp;
$tag = $1 if /^Tag: (\S+)/;
$uuid = $1 if /^View uuid: (\S+)/;
s/^/\t/;
print "$_\n";
}
if ( $tag eq '' or $uuid eq '' ) {
print "Error! $view2del: unable to get tag and/or uuid\n";
return 0;
}
my $err_count = 0;
print "\tremoving tag...\n";
my $cmd = "cleartool rmtag -view $tag";
$err_count += 1 if DoIt($cmd);
print "\tunregistering view storage...\n";
$cmd = "cleartool unreg -view -uuid $uuid";
$err_count += 1 if DoIt($cmd);
print "\tremoving view references...\n";
$cmd = "cleartool rmview -force -avobs -uuid $uuid";
$err_count += 1 if DoIt($cmd);
if ( $err_count == 0 ) {
print "Success! removed view $view2del\n";
}
else {
print "Error! errors occured while removing $view2del\n";
}
}
#############################################
sub DoIt {
my $ret = system($_[0]) / 256;
print "Error! cmd failed: $_[0]\n" if $ret != 0;
return $ret;
}
Дополнительные шаги, необходимые для удаления CCWeb Views, описаны в этом IBM technote :
Примечание: Для ClearCase 7.1.1.1 или 7.1.1.2 файл session.dat больше не генерируется из ClearCase 7.1.1.1 в результате APAR PM03334 : сессия.dat больше не нуждается в очистке.
Удалите хранилище представлений и кэшированные файлы, хранящиеся на сервере CCWeb.
По умолчанию view.stg
(CCRC / CCWeb view storage), view.dat
и кэшированные файлы VOB хранятся в следующем месте:
- Windows® :
C:\Program Files\Rational\ClearCase\var\ccweb\<user>\<view_tag>
- UNIX® / Linux® :
/var/adm/rational/clearcase/ccweb/<user>/<view_tag>
Удалите папку <view_tag>
, расположенную в расположении выше.Это удалит файлы хранилища представления, view.dat
и кэшированные файлы VOB и позволит пользователю создать новое представление, используя то же / исходное имя представления.
Примечание. Может также потребоваться вручную удалить рабочую область представленияесли представление все еще присутствует на клиенте CCRC.Это можно сделать, перейдя к определенной рабочей области в клиентской системе (по умолчанию C:\Documents and Settings\<user-name>\view_tag
) и удалив рабочую область просмотра.
Этот путь к рабочей области указан в файле сеанса .dat
.Запись выглядит так: -workroot "c:/web_dev2"
.Это может оказаться полезным в случае, когда пользователь не использовал местоположение по умолчанию.
Корни представления CCRC также кэшируются в файле на клиенте в профиле пользователя.
Проверьте следующий файл и удалитеуже удален вид из этого списка.
C:\Documents and Settings\<user-name>\.ccase_wvreg