Unity SVN版本控制

安装服务器、客户端

15146729-3f0c767d64358347.png
image.png

15146729-36b0113c37bb9063.png
image.png

这个是SVN服务器
https://www.visualsvn.comJserver/download/
这个是SVN客户端
https://tortoisesvnnet/downloads.html
官网下面可以找到中文语言包
15146729-389dca0729e88214.png
image.png

我是点不开
这里可以下载下好的压缩包
http://www.sikiedu.com/course/381/task/25413/show
先安装这个 我的是64位安装64位电脑
15146729-4e82cc4fdeba8d69.png
image.png

第一个是安装服务器管理员工具
第二只安装管理员工具
第三个使用命令行


15146729-12802310c9a44ddf.png
image.png

这个是标准版还是企业版 企业版收费所以标准版


15146729-17a76a27895716fb.png
image.png
15146729-3bd5d8773989d73c.png
image.png

直接默认安装算了
这个是服务器可视化工具


15146729-6a29f132e4391d8e.png
image.png

然后安装客户端
无脑Next就行 安装包第一个是语言,不过比较简单比Git单词少基本不装


15146729-cb751d89455f2333.png
image.png

桌面右键有这个就安装完成
15146729-e316d4d922f27de3.png
image.png

服务器部署

打开服务器


15146729-9db0efdd08bc43ba.png
image.png

创建仓库


15146729-9a50daf28bec5050.png
image.png

存储方式第一个是文件的存储方式
15146729-7466babb2bce30c4.png
image.png

然后输入库名字
然后是创建空的仓库还是带有标准目录的仓库


15146729-a04c6def4f49e619.png
image.png

选第一个
这个是权限,以后也要分配,所以直接创建
15146729-f2357061f384d14f.png
image.png

这样创建带有标准目录的文件夹
15146729-f55d798f78f53a0c.png
image.png

主干就是放一般项目代码的
15146729-5582e7efd58673d8.png
image.png

创建用户


15146729-600cc3eb005e5415.png
image.png

创三个账号
15146729-2600c278c4e3144e.png
image.png

这里分配权限
15146729-cf085fc51376ddb8.png
image.png

这是一开始默认的所有人可读可写删掉
15146729-e0185bd911045a2b.png
image.png

shift多选可以都添加
15146729-56c4959b775655d0.png
image.png

记得点应用不然没有
group创建两个小组
15146729-c1f16eada58159a7.png
image.png

15146729-dc7e506fef0b4cc9.png
image.png

Add添加账户到小组
回到分配界面
15146729-9380a8e2cf872f66.png
image.png

把账号都删了 可以选择分配组
15146729-302db79ddb2ede17.png
image.png

然后想加权限添加group人员就行了
15146729-42769b504284b4d0.png
image.png

15146729-19adf78e0839df6d.png
image.png

然后Tag因为是发布版本代码一般人员不可动 所以一般人员改成只读


15146729-09ca027e6c63d060.png
image.png

这个是默认 继承父类的权限
15146729-3554feee4e88c96f.png
image.png

客户端部署

创建一个文件夹,创建两个新文件


15146729-5b6b5f1912a74262.png
image.png
15146729-1490bc877277ad0b.png
image.png

在joey 点击Checkout


15146729-ff99253f49a2fd0f.png
image.png

Depth是深度默认是全部递归 Revision版本 是最新版


15146729-3bf431a8426c39d5.png
image.png

然后输入账号密码 这个忘了的话好像是查看不了 但是可以重新设置密码
15146729-78fa300550b4e616.png
image.png

这个就自动下载第一版
15146729-86e1fb315293a07e.png
image.png

然后文件里就有了 这个.svn类似于之前的.git


15146729-093bdcc63a5ef6d2.png
image.png

提交

这里面创建一个.cs文件


15146729-b83dd3fbe199c73a.png
image.png

开始输入


15146729-00ae72c5b9ebeced.png
image.png

在文件所在文件夹目录右键,点击add
15146729-e0b82bae00c88d46.png
image.png

但是并没有提交


15146729-e59fa885f161643b.png
image.png

提交
15146729-1984463bbb86fc34.png
image.png

OK然后提交完毕
15146729-8384608fc6dc0ccb.png
image.png

这个版本号每提交一次会加一
15146729-2b34d387567e2e91.png
image.png

然后服务器就有这个文件了
15146729-639ed9ecd2a0bbd9.png
image.png

然后再别的文件夹checkout 这里就有了 不过有时候需要输入账号密码


15146729-5420c33aada7e4da.png
image.png

修改

15146729-2efebd4a99970338.png
image.png

joey文件的类


15146729-f4e4505ae57da311.png
image.png

提交


15146729-2076e2fa2b176a9a.png
image.png

我这个好像是老版本没有提示
15146729-af03b54acd685207.png
image.png

新版本这个文件下有修改
15146729-ad97c43b6dcb5f92.png
image.png

然后再lain文件夹下更新


15146729-84dec1f41d3eef71.png
image.png

这样就同步了

删除

15146729-7de74e054c21d6b2.png
image.png

回到joey把这个文件删掉


15146729-7c6cc6257af3fb73.png
image.png

提交丢失信息


15146729-7f3f943a1147fda9.png
image.png

回到lain文件夹 更新
15146729-8bbc1dff4c783330.png
image.png

然后就同步没有了
15146729-ea8dca55b11cb6f5.png
image.png

回滚

在文件夹右键show log


15146729-60ffdae1babe5e1c.png
image.png

可以查看我们的操作


15146729-e48d5dad000a27dc.png
image.png

然后回滚 就是转移到这个版本
15146729-e26e318b190ad985.png
image.png

这个是确认吗 确认


15146729-efa2fea27d62650c.png
image.png

然后本地有了
15146729-96e92aed452d7c6a.png
image.png

但是服务器没有
15146729-9aa4695f7f9ebd4a.png
image.png

所以还是要提交
15146729-56bd32fe94f20493.png
image.png

在joey这里更新然后就也有了
15146729-708de9137569d3a3.png
image.png

解决代码冲突

15146729-07974311279461d3.png
image.png

必须客户端版本号大于服务器版本号才能提交
在文件夹改变 ,当你的文件夹与服务器不一致就会报红
我们分别在不同文件夹进行更改


15146729-24503001ab72a7d8.png
image.png

15146729-157d4ff8d78b8016.png
image.png

show log 可以看到最高版本为5


15146729-298f42492217e155.png
image.png

把第一个文件提交
然后提交第二个文件夹的文件
然后报错了
15146729-497e7a1b18c8525d.png
image.png

关闭后提醒你是否要更新
15146729-5c8465fd7e260f04.png
image.png

更新就是把版本6下载下来


15146729-4db7ddeb4585f66f.png
image.png

然后第二个提交的文件夹就多了几个
15146729-372b26bca8a890e8.png
image.png

r5是第五版本
r6是第六版本
然后就跟git差不多 svn合并后告诉两个不同版本号改的是什么
15146729-70f36e1200ebca23.png
image.png

把提示删掉 就合并成一个新的类 就是r7版本
15146729-7893af6dc6ceb7ab.png
image.png

其他三个文件是你之前提交的还有冲突的 把他们都删了
15146729-606681d274ae1208.png
image.png

然后提交 就成了r7版本
15146729-ab82c07e5f5d920b.png
image.png

SVN其他常用操作

1.代码检出
打开showlog


15146729-b4b24a386152424c.png
image.png

这样可以把代码单独保存到一个位置
2.代码对比
双击


15146729-b1b93c889fbaaaf7.png
image.png

很明显看到改动了什么
15146729-3a9642f425f55d11.png
image.png

可以换其他行 Next difference 可以切换到下一个不同处
15146729-3455ddcd3cf0729d.png
image.png

注销账号

15146729-a1161c8126b82d99.png
image.png

15146729-489696e6eab9e91d.png
image.png

然后如果还有个人要去做这个项目


15146729-cd250839c92be65d.png
image.png

先把账号注销 然后可以检出不同版本号
15146729-5254f4ee015f0c42.png
image.png

然后就是更新版本6了

用SVN管理Unity

和之前一样新建一个


15146729-eb821ae0c81f78ac.png
image.png

然后随便创个Unity项目


15146729-8d471e2880843dd7.png
image.png

在文件目录下检出
15146729-5b840d3d74044429.png
image.png

这个改成你的项目文件夹


15146729-3fc48d1305a64741.png
image.png

其实我们知道Library,obj,Temp,sln很多都是没有用的,不提交SVN有两种方法
第一、提交只提交Assets 和 ProjectSettings
第二、
在项目里右键


15146729-68ed6c8ad2a1305c.png
image.png

这里设置项目不需要的后缀名的东西


15146729-8cd1fd389bb6159c.png
image.png

如果文件夹就这样 不过要像之前一样创建完毕
15146729-ea50cf77d65307e0.png
image.png

也可以手动添加后缀 记得后缀加*
然后就成了这样
15146729-bda62ba56a001517.png
image.png

提交的时候.meta文件也要提交,这个文件记录了此项一个唯一的64位的guid,这个文件必须上传,否则会出现各种缺失的异常情况(比如脚本Miss等)
然后提交


15146729-2cdcea763b50aedc.png
image.png

然后服务器就两个文件了


15146729-db84459907ef0373.png
image.png

全局在这里设置
15146729-703b8cb445514a36.png
image.png
15146729-dd5dcc9ece0949f7.png
image.png

在后面一个空格输入一个 应用


15146729-a927d11fc39bc8c3.png
image.png

然后以后项目都不用设置了


15146729-5fead2deb2d0e4e4.png
image.png

但是不要屏蔽.meta会出引用丢失问题
然后打开unity
15146729-7639a96ad6499525.png
image.png

这个是开启生成点.meta文件 不然会引用丢失 其实默认也可以


15146729-b16e2051322ae741.png
image.png

这个是把二进制转化为文本 就可以SVN管理了
15146729-61ede9d8abe474dd.png
image.png
15146729-6b962f54ffdc208c.png
image.png

这样就OK了

转载于:https://www.jianshu.com/p/1e9a1b1ad7e4

猜你喜欢

转载自blog.csdn.net/weixin_33971977/article/details/91150677