记一次linux下,源码中包含外链时,SVN打tag

问题描述:源码中包含外链打tag,使用SVN cp 源码文件 SVN上的tag目录 ;打tag时会将源码的外链的属性也保存下来,导致打完tag后外链目录仍然在一直更新,导致tag目录无效

解决方法

在本地新建个文件夹,再将源码复制到该文件夹下,再使用

cp -r ./01_Trunk/xxxx  $pack_dir
svn import $pack_dir svn://192.168.X.X/XXXX/03_Tags/$pack_dir -m "[Robot Tag^ > ^]:$pack_dir" --username=XXXX --passwXXXX

最开始尝试了,先在SVN的tag路径下mkdir $pack_dir,然后将 $pack_dir checkout下来,再将源码复制到该目录下,最后执行svn commit ,一直尝试不成功,前面的mkdir和checkout、cp都执行完成,执行commit也没有报错但是svn的tag目录下时空的,导致没有报错也无从下手解决,网上也有类似的现象,试了也没有用 只能另寻方法

svn mkdir -m "svn上创建tag目录 ^_^" svn:/xxxx/03_Tags/$pack_dir
svn co svn:/xxxx/03_Tags/$pack_dir
cp -rf ./01_Trunk  $pack_dir #复制源码
svn add . --no-ignore --force
svn commit -m "打tag"   --username=autobuild --password=123456

看到了一篇“关于SVN常用命令之import”文章,关于import命令解释:

svn import是将未版本化的文件导入版本库中的最快方法,它会根据需要创建中介目录。

svn import不需要一个工作拷贝,你的文件会直接提交到版本库,这通常用在你希望将一组文件加入到Subversion版本库时。

意思很明了,直接将复制后的文件导入到对应的tag目录下,即试即成功!

tag目录下的所有文件都没有小蓝箭头的图标

经验分享 程序员 微信小程序 职场和发展