git - 我有适用于 clearcase 的 ant 脚本。谁能帮我把它转换成 GIT
问题描述
我正在将一个应用程序从明确的案例迁移到 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}\calcBuild\setenvs.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
不是:它更新文件内容,它不会“创建可写副本” 。
请参阅“保留结帐和未保留结帐之间有什么区别? ”,我在其中将其与 Git 进行了比较。cleartool checkout (co)
cleartool co -nc ...
:不需要,Git 存储库在本地读/写。不需要“cleartool checkout
”。cleartool ci
:你需要添加、提交和推送
那是:
git add setenvs.bat
git commit -m "bump version number"
git push
查看更多关于 ClearCase 和 Git 之间的区别的信息
- “每个开发人员都应该了解的基本 ClearCase 概念是什么? ”(2009 年 3 月)
- “ ClearCase 的优点/缺点”
推荐阅读
- html - 在 SQL 请求中生成具有多个属性的 HTML 标记
- python - 在 matplotlib 中动画散点和线
- pyviz - 如何使用 Panel Pyviz datepicker 限制范围?
- java - 在原始数组android java中循环
- ios - iOS swift - UICollectionView scrollToItem 在项目的 scrollPosition
- c++ - C++ 使用 GLFW,绘制三角形函数表现怪异, cout 被注释掉
- android - 如何解析对对象列表的 WebSocket 响应
- javascript - 通过在输入字段中输入 id 显示所有信息
- python - 如何创建基于模板的表并在多个 DITA xml 中使用它并通过它填充数据
- python - 无法遍历 Pytorch Dataloader 。不等张量