一个实用的方法教你批量克隆项目

记得早前使用宇宙第一开发工具VS时,团队源码管理选择TFS是众多小伙伴的选择,当git出来以后,微软也适时的在Team Foundation里面支持使用git管理源码了,你就可以非常愉快的使用git克隆存储库,但对于大型的项目来说,一次性克隆上千个项目手工整的话非常的累人啊。

团队开发使用Team Foundation来进行源码管理,通常对于大型项目来说,编写一个BAT文件批量克隆项目对于首次拉取项目非常的方便,不需要你一次一次的执行枯燥的git clone命令,对于上千个项目,这得整到何时方可休啊,所以懒人得想点懒办法,使用批处理命令可以轻松搞定。

 

BAT批量克隆项目

想要一次性批量克隆1000个项目,得分几步来实现:

  • 第一步:先获取到每个项目的克隆地址
  • 第二步:保存结果到记事本文件(注意编码用ANSI)
  • 第三步:编写bat文件
  • 第四步:执行bat文件
  • 第五步:喝会茶再回来

脚本获取项目克隆地址

想要在Team Foundation里面批量克隆1000个项目,首先得想办法得到每个项目的地址,你可以直接进入到项目版本控制界面,最好使用chrome,edge,firefox等浏览器,因为你要用到开发者工具,在控制台里面编写一段脚本,如下图所示:

编写BAT批量克隆项目1000个轻松搞定

左边就是存储库里面的项目列表,每个项目的克隆地址我们可以编写一段js脚本来获取到,代码如下:

var arrary= document.querySelector(“#tfs_tnul1”).querySelectorAll(“li”); var url=””; for(var i = 0; i< arrary.length; i++){ url+=”http://jhrs.com/tfs/UniversityProjects/jhrswpf/_git/”+ encodeURIComponent(arrary[i].title)+” “+arrary[i].title+”\r\n”; } console.log(url);

然后在控制台里面是这样的。注意,以上代码是在一行里面,不要换行。

Console-Script

把代码编写好了之后,敲回车执行下就是了,结果如下:

console-result

好了,执行后我们就拿到了所有项目的克隆地址。

保存结果到记事本

为什么要将结果保存到记事本呢?是因为我们在接下来的bat文件中会读取该文件中的克隆地址,有朋友会问,为什么不直接将地址放到bat批处理文件中呢?答案是因为克隆地址存在有中文,URL地址经过编码,直接放到批处理文件中执行时会报错,不信可以自己试。

用记事本建立list.txt文件,使用ANSI编码。

clone-address-list

save-location

上图分别是list.txt文件,该文件必须使用ANSI编码保存,不然会出错,因为批处理中文乱码。

编写bat文件

bat文件内容如下

@echo off

echo 按任意键开始批量克隆

pause

for /f "delims= tokens=1,2" %%i in (list.txt) do (

echo %%i %%j

git clone %%i %%j

)

echo 'git clone finish!'

pause

以上代码就是通过bat读取list.txt文件来批量克隆项目的关键。新建记事本文档,把上面内容复制进去,保存即可,文件编码选为ANSI编码,默认是UTF8,另存为就可以改编码了。

执行bat文件

bat文件编写好后,执行就是了,批量克隆效果如下:

batch-clone

因为项目比较多,需要等好长时间。最好喝会茶再回来看看。

总结

工作中发现团队小伙伴一个一个的克隆项目,实在麻烦,于是就花了一些时间研究了一下,就用到了这些懒办法来实现批量克隆项目,总算是不用一个一个的去敲git clone命令,接下来再复制下一个项目的克隆地址,然后再git clone了。

我是IT菜鸟,喜欢这篇文章吗?

原文链接:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值