我正在将一个应用程序从清晰的情况迁移到git。编写一个构建脚本以增加构建号,并与清晰的情况有关。现在,我必须使其用于git。任何人都可以帮助我修改以下代码以使其适用于git。我已将可执行路径更改为git.exe。因此,我只是帮助将清晰的案例命令转换为git。
<target name="decBuildNo">
<trycatch property="exception">
<try>
<exec dir="${basedir}calcBuild" executable="${cleartool}" failonerror="true">
<arg value="update"/>
<arg value="setenvs.bat"/>
</exec>
<!-- update the build number in setenvs.bat and check in-->
<exec dir="${basedir}calcBuild" executable="${cleartool}" failonerror="true">
<arg value="co"/>
<arg value="-c"/>
<arg value=""bump version number""/>
<arg value="setenvs.bat"/>
</exec>
<decrbuild buildNumberKey="CALCMGR_BUILD_NO" fileName="${basedir}calcBuildsetenvs.bat"/>
<exec dir="${basedir}calcBuild" executable="${cleartool}" failonerror="true">
<arg value="ci"/>
<arg value="-c"/>
<arg value=""bump version number""/>
<arg value="setenvs.bat"/>
</exec>
</try>
<catch>
<echo>Increment build number failed: ${exception}</echo>
<antcall target="buildfailed"/>
<fail>${exception}</fail>
</catch>
</trycatch>
</target>
等效于:
-
cleartool update
将是git pull
(前提是GIT存储库已被克隆(
如果您真的只想更新一个文件setenvs.bat
,则需要:
git fetch
git checkout HEAD -- setenvs.bat
git checkout
是不是 cleartool checkout (co)
:它更新文件内容,不会"创建可写的副本"。
请参阅"预留结帐和未保留的结帐之间有什么区别?",在哪里将其与git进行比较。
cleartool co -nc ...
:无需,git存储库本地读/写入。不需要"cleartool checkout
"。cleartool ci
:您需要添加,提交和推动
是:
git add setenvs.bat
git commit -m "bump version number"
git push
请参阅
中的clearcase和git之间的差异的更多信息- "每个开发人员应该知道什么基本的清除概念?"(2009年3月(
- "清除优势/缺点"