request for cm diff command option to be able to see path info for xlinks
We need to be able to do a diff on a repository on a server (without workspaces) and then get the OLD version of a file through any xlink.
cm diff OLD NEW
You don’t get the path on the remote repository from a diff on current repository.
If I do a cm diff in the first repository, There is NO path information through the xlink. And ALL the information is related to the NEW changeset.
So you can not do a simple diff using the FIRST repository’s information:
$ cm ls '/one/two/My link with spaces/bird/file1.txt' --tree='24@0000000099TESTREPO3a@myhost:8087' --format="{revid}"
Can't resolve the selector for the item /one/two/My link with spaces/bird/file1.txt
Because all the info is for the FIRST repository, not the REMOTE repository xlinked to.
Doing a diff on the FIRST repository currently gives the following with NO information about the xlink:
$ cm diff '24@0000000099TESTREPO3a@myhost:8087' '26@0000000099TESTREPO3a@myhost:8087' --format='PATH:{path} STATUS:{status} TYPE:{type} PREVID:{parentrevid} REVID:{revid}'
PATH:"/one/two/My link with spaces" STATUS:C TYPE:X PREVID:-1 REVID:-1
PATH:"/one/two/My link with spaces/bird/file1.txt" STATUS:C TYPE:F PREVID:463 REVID:474
What is needed is the same NAME output variable as what ‘cm ls / -R’ provides, so you can get this using the diff command:
$ cm diff '24@0000000099TESTREPO3a@myhost.net:8087' '26@0000000099TESTREPO3a@myhost.net:8087' --format='PATH:{path} STATUS:{status} TYPE:{type} PREVID:{parentrevid} REVID:{revid} NAME:{name}'
PATH:"/one/two/My link with spaces" STATUS:C TYPE:X PREVID:-1 REVID:-1 NAME:My link with spaces -> xlink -> /dog/cat 42@0000000099TESTREPO2@myhost.net:8087