先说说业务需求吧
有一个自己写的Framework,很多项目都在引用他,但是Framework的代码随着时间推移会发生变化,这就导致了一个繁琐的操作,那就是得把所有引用该Framework的项目下的dll进行替换,很不爽啊.下面我就提出一种VSS自动化解决方案:
1获取Vss中的framework以保证最新版本,不要迁出
2.使用msbuild编译该文件
3.迁出获取指定需要替换的项目下的dll
4.替换
5迁入完成
简要代码提示
1:我们可以使用VSSItem.get()这个方法其中有个int类型的参数,由于该方面的参考资料很少,我google了很多也不知其含义,但是我写1和写0代码都可通过(测试有限).
2编译我使用的是engine这个类,因为好写,大家也可以试试
3.迁出使用的是checkout这个方法
4.使用的是File.copy()
5.使用的是checkin()
注:其中3,4,5我认为可以只有3,5即可,也就是改变一下checkin方法中的路径,这样就省了4,但是该方法造成了一些莫名的问题.在此小提一下