открытый вопрос - PullRequest
       37

открытый вопрос

1 голос
/ 28 мая 2010

Допустим, у меня есть каталог в \ testfolder, а последний в настоящее время находится в / main / 10. Я знаю, что операция, приводящая к созданию тестовой папки @@ / main / 6, заключается в удалении файла с именем test.txt.

Какова последовательность операций cleartool, которые можно выполнить в сценарии, который будет принимать «testfolder @@ / main / 6» и «test.txt» в качестве входных данных и будет отыскивать содержимое test.txt с этого момента время

Один из способов, который я могу придумать, - это получить время операции / main / 6, создать представление с параметром config spec -time, установленным на это время, и затем кошку test.txt в каталоге. Но мне интересно, могу ли я сделать это более простым способом, который не требует манипулирования спецификациями конфигурации, возможно, с помощью «cleartool find» и расширенных путей

1 Ответ

0 голосов
/ 28 мая 2010

Если вы используете динамическое представление , вам следует изучить расширенные имена путей из testfolder, чтобы получить доступ к содержимому test.txt.

cd m:\myview\myVob\path\to\testfolder

# In version 5 of testfolder, test.txt was still there
cd @@/main/5 

# Note: test.txt is a directory! only LATEST is a file
type test.txt@/main/LATEST 

ОП добавляет:

как насчет того, если test.txt был перемещен с testFolder на testFolder2, а затем была зарегистрирована новая версия test.txt? В этом, когда я вхожу в testfolder@@/main/5, test.txt@@/main/LATEST неверно ...

Технически это случай злых близнецов : существует 2 объекта с одинаковыми именами (один в testfolder@@/main/5, один в testfolder@@/main/10) с другой историей.

Вам необходимо вернуть прежний test.txt (, такой как откат файла ), удалить текущий test.txt и вернуть старый, в настоящее время перемещенный в папку 2. (cleartool move)

 cd testFolder2
 cleartool checkout -c "move test.txt back to testFolder"
 cd ../testFolder
 cleartool checkout -c "get back test.txt from testFolder2"  
 cleartool rmname test.txt
 cleartool move ../testFolder2/test.txt
 cleartool ci -nc .
 cleartool ci -nc ../testFolder2
...