Clearcase: Как мне объединить определенный файл из одного представления в другое, чтобы избежать сценария Evil Twin? - PullRequest
1 голос
/ 18 ноября 2010

У меня есть файл, который нужно перенести в другую ветку. Как мне это сделать из командной строки. Кажется, все связано со слиянием, когда файл уже существует в обеих ветках.

Ответы [ 3 ]

2 голосов
/ 18 ноября 2010

Сначала необходимо объединить родительский каталог, чтобы файл появился в каталоге в целевой ветви.На этом этапе новый файл будет иметь нулевой размер.Затем вы можете объединить сам файл.Самый простой способ выполнить обе эти операции - через представление дерева версий - гораздо менее подверженное ошибкам, чем выполнение из командной строки.

1 голос
/ 18 ноября 2010

Намного проще:

  • 1 / rmname файла в каталоге назначения
ct co -nc .
ct rmname -force file.txt
  • 2 / объединить каталог
ct findmerge . -ftag view_tag

с 'view_tag' видом на исходный каталог

0 голосов
/ 18 ноября 2010

У меня больше нет доступа к чистой среде, так что это из памяти, но вам нужно связать версию из другой ветки с той, с которой вы работаете.

Предположим, у вас есть файл new_file, который был добавлен в ветку new_feature (последняя версия new_file@@/main/new_feature/5), который вы хотите объединить / перенести в ветку maintenance.

prompt>cleartool checkout -nc .
checking out some_dir@@/main/maintenance/2
...
prompt>cleartool ln .@@/main/new_feature/LATEST/new_file/main/new_feature/5 .
...
prompt>cleartool ci -c "linked in .@@/main/new_feature/LATEST/new_file/main/new_feature/5"
prompt>

Приведенные выше команды, вероятно, не на 100% правильны, но должны дать вам представление. Вы хотите использовать cleartool ln, чтобы избежать злых близнецов, потому что это принесет версию из уже существующего элемента (то есть не создавая нового близнеца).

...