windows+ant+git+tomcat中ant直接获取git项目部署注意点

时间:2024-01-10 15:49:56

最近项目搬迁到公司的“GitHub”上面原来的SVN的ant发布脚本要改下,于是百度ant获取git的方法太少了,windows平台上更是没有所以搞了两天,今天终于有点成果分享给大家。

1.服务器上也要安装git,还要配置git环境,在Path中加上C:\Program Files (x86)\Git\cmd(你的路径可能不同,就是Git\cmd路径)

2.GitHub上有两种路径http的那个要用户密码,我是没研究出来bat脚本自动输入密码,所以用git开头的路径

3.把公钥.ssh文件夹放入C:\Users\Administrator(登录用户对应文件夹)下面

3.5已有公钥没有私钥,

1)运行PuTTYGen(安装TortoiseGit在其目录下bin中),在Conversions菜单中点击Import key,选择ssh-keygen生成的私钥文件所在位置,比如id_rsa文件。

2)点击Save private key按钮,将其保存为.ppk文件。

3)打开Pageant,点击Add Key,选择前一步所保存的.ppk文件所在的位置即可。

4.双击启动pageant.exe(安装TortoiseGit在其目录下bin中),点击Add Key,选择ppk文件后打开。伺候pageant就会在后台运行,右下角有相应图标。

第一次下载用git bash 有一个yes要手动输入以后就不用了,所以就可以用脚本了这是一个主意点吧。

5.ant写法先加入ant宏,放在脚本头上

<macrodef name = "git">
<attribute name = "command" />
<attribute name = "dir"default = "" />
<element name = "args"optional = "true" /> <sequential>
<echo message = "git @{command}" />
<exec executable = "git"dir = "@{dir}">
<arg value = "@{command}" />
<args/>
</exec>
</sequential>
</macrodef> <macrodef name = "git-clone-pull">
<attribute name = "repository" />
<attribute name = "dest" />
<sequential>
<git command = "clone">
<args>
<arg value = "@{repository}" />
<arg value = "@{dest}" />
</args>
</git>
<git command = "pull"dir = "@{dest}" />
</sequential>
</macrodef>

再写获取关键句

<git-clone-pull repository="git://github.com/280north/ojunit.git"dest="ojunit" />

这里说明下dest="ojunit"为项目文件名字也就是和路径最后是一样的,获取后和ant脚本在一个文件夹中

6.git的clone是全拉发布路径要针对实际的路径,这也是git的不好的地方(可能我是小白),还有老司机估计看出来了ant其实走的是cmd获取git这条路,可能还有第三方jar我在github上没找到希望有大神找到留言补充

感谢以下两位博主给我参考:http://justlpf.blog.51cto.com/3889157/1212564

https://yq.aliyun.com/articles/44476

7.windows安装git一路next下去会自动在环境变量中添加git,我当时安装时选了最小安装所以要手动配。