Clearcase:在最新标签中删除的文件列表

Clearcase:在最新标签中删除的文件列表,clearcase,Clearcase,在Clearcase中,我需要找出两个标签之间的区别,这两个标签包括新标签中新添加的文件、修改的文件和删除的文件 我使用了以下脚本,但它没有提供正确的数据: #!/bin/sh REL_LBL_1=REL1_7 REL_LBL_2=REL1_8 echo "\n ${REL_LBL_2} versions of files that replaced ${REL_LBL_1} versions ..." echo "=======================================

在Clearcase中,我需要找出两个标签之间的区别,这两个标签包括新标签中新添加的文件、修改的文件和删除的文件

我使用了以下脚本,但它没有提供正确的数据:

#!/bin/sh
REL_LBL_1=REL1_7
REL_LBL_2=REL1_8

echo "\n ${REL_LBL_2} versions of files that replaced ${REL_LBL_1}
versions ..."
echo "====================================================="
cleartool find -avobs -element "{lbtype_sub(${REL_LBL_2}) &&
lbtype_sub(${REL_LBL_1})}" -version "{lbtype(${REL_LBL_2}) && !
lbtype(${REL_LBL_1})}" -print

echo "\n Files created new to ${REL_LBL_2} ..."
echo "====================================================="
cleartool find -avobs -element "{lbtype_sub(${REL_LBL_2}) && !
lbtype_sub(${REL_LBL_1})}" -version "lbtype(${REL_LBL_2})" -print

echo "\n ${REL_LBL_1} files removed in ${REL_LBL_2} ..."
echo "====================================================="
cleartool find -avobs -element "{lbtype_sub(${REL_LBL_1}) &&
lbtype_sub(${REL_LBL_2})}" -version "lbtype(${REL_LBL_1})" -print
输出显示了一些文件,但当我签入最新标签时,这些文件仍然存在

这可能是因为这些相同的文件在被删除后的某个时间再次添加到源代码管理中。
检查他们的版本历史记录

cleartool find -avobs -element "{lbtype_sub(${REL_LBL_1}) &&
lbtype_sub(${REL_LBL_2})}" -version "lbtype(${REL_LBL_1})" -print
或者这可能是因为该查询没有列出“在${REL_LBL_2}中删除的文件”。它仍然会显示带有
${REL\u LBL\u 2}
以及
${REL\u LBL\u 1}

至少尝试一下:

cleartool find -avobs -element "{lbtype_sub(${REL_LBL_1}) &&
lbtype_sub(${REL_LBL_2})}" -version "lbtype(${REL_LBL_1}) && !lbtype(${REL_LBL_2})" -print


这个脚本的目的是,我计划将Clearcase迁移到GIT,下面是计划-

  • 我将把来自cleacase label-1的数据放在GIT中,并在GIT中应用tag label-1
  • 我将在Clearcase中查找标签1和标签2之间的差异,并在GIT中复制差异,并在GIT中应用标签2。
    对于第二点,我将使用上面的脚本来识别、修改文件、删除文件和新文件
  • 问题是。。。您不需要编写脚本。一点也不

    只需将ClearCase视图设置为标签2,并将该内容添加到git repo:

    cd /path/to/git/repo
    git --work-tree /path/to/clearcase/view/set/to/label_2 add .
    git commit -m "Import label 2"
    git tag -m "label2 import" label2
    
    Git将自动检测添加/修改和删除的内容

    输出显示了一些文件,但当我签入最新标签时,这些文件仍然存在

    这可能是因为这些相同的文件在被删除后的某个时间再次添加到源代码管理中。
    检查他们的版本历史记录

    cleartool find -avobs -element "{lbtype_sub(${REL_LBL_1}) &&
    lbtype_sub(${REL_LBL_2})}" -version "lbtype(${REL_LBL_1})" -print
    
    或者这可能是因为该查询没有列出“在${REL_LBL_2}中删除的文件”。它仍然会显示带有
    ${REL\u LBL\u 2}
    以及
    ${REL\u LBL\u 1}

    至少尝试一下:

    cleartool find -avobs -element "{lbtype_sub(${REL_LBL_1}) &&
    lbtype_sub(${REL_LBL_2})}" -version "lbtype(${REL_LBL_1}) && !lbtype(${REL_LBL_2})" -print
    


    这个脚本的目的是,我计划将Clearcase迁移到GIT,下面是计划-

  • 我将把来自cleacase label-1的数据放在GIT中,并在GIT中应用tag label-1
  • 我将在Clearcase中查找标签1和标签2之间的差异,并在GIT中复制差异,并在GIT中应用标签2。
    对于第二点,我将使用上面的脚本来识别、修改文件、删除文件和新文件
  • 问题是。。。您不需要编写脚本。一点也不

    只需将ClearCase视图设置为标签2,并将该内容添加到git repo:

    cd /path/to/git/repo
    git --work-tree /path/to/clearcase/view/set/to/label_2 add .
    git commit -m "Import label 2"
    git tag -m "label2 import" label2
    


    Git将自动检测添加/修改和删除的内容

    什么是不正确的?少了什么?(您使用的是哪个版本的ClearCase,在哪个操作系统上?)删除的文件列表给出的是错误的,我使用的ClearCase版本是7.0.1删除的文件列表是否不完整?还是完全错了?你是在动态视图还是快照视图中使用它?这完全是错误的,它显示的数据不正确,我使用的是动态视图ClearTool find-avobs-element“{lbtype_sub(${REL_LBL_1})和&lbtype_sub(${REL_LBL_2}”)-版本“lbtype(${REL LBL_LBL_1})”-打印--这个的输出显示了一些文件,但当我签入最新的标签时,那些文件仍然存在什么不正确?少了什么?(您使用的是哪个版本的ClearCase,在哪个操作系统上?)删除的文件列表给出的是错误的,我使用的ClearCase版本是7.0.1删除的文件列表是否不完整?还是完全错了?你是在动态视图还是快照视图中使用它?这完全是错误的,它显示的数据不正确,我使用的是动态视图ClearTool find-avobs-element“{lbtype_sub(${REL_LBL_1})和&lbtype_sub(${REL_LBL_2}”)-版本“lbtype(${REL LBL_LBL_1})”-打印--这个的输出显示了一些文件,但当我签入最新的标签时,这些文件仍然存在感谢@VonC的快速响应,我已经检查了这些文件的版本树,它完全没有被删除,并且两个标签之间的文件是相同的。@user2369546检查它们的父历史的版本树。你应该看到他们删除的版本。我已经检查了父目录的版本树,没有删除该文件,我不能得到忽略中间删除和添加的输出,我需要两个标签之间的最终差异。这个脚本的目的是,我计划将Clearcase迁移到GIT,下面是计划-1)我将把来自Clearcase标签-1的数据放在GIT中,并在GIT中应用标签-1 2)我将在Clearcase中找到标签-1和标签-2之间的差异,并在GIT中复制差异,在GIT中应用标签-2。对于第二点,我将使用上面的脚本来识别、修改文件、删除文件和新文件。非常感谢@VonC,你太棒了,我将尝试这个想法。在添加到GIT之前,我必须忽略一些文件,可能是我将尝试将这些文件夹包括在.gitignore中并将推送。感谢@VonC的快速响应,我已检查了这些文件的版本树,它完全没有被删除,并且两个标签之间的文件是相同的。@user2369546检查它们的父历史记录的版本树。你应该看到他们删除的版本。我已经检查了父目录的版本树,没有删除该文件,我不能得到忽略中间删除和添加的输出,我需要两个标签之间的最终差异。这个脚本的目的是,我计划将Clearcase迁移到GIT,下面是计划-1)我将把来自Clearcase标签-1的数据放在GIT中,并在GIT中应用标签-1 2)我将在Clearcase中找到标签-1和标签-2之间的差异,并在GIT中复制差异,在GIT中应用标签-2。对于第二点,我将使用上面的脚本来识别、修改文件、删除文件和新文件。非常感谢@VonC,你太棒了,我将尝试这个想法。在添加到GIT之前,我必须忽略一些文件,可能是我将尝试将这些文件夹包括在.gitignore中并将推送。