SVN是什么?
代码版本管理工具
它能记住你每次的修改查看所有的修改记录恢复到任何历史版本恢复已经删除的文件
svn跟Git比,有什么优势
使用简单,上手快
目录级权限控制,企业安全必备
子目录Checkout,减少不必要的文件检出
主要应用:
开发人员用来做代码的版本管理
用来存储一些重要的文件,比如合同
公司内部文件共享,并且能按目录划分权限
sVN仓库
推荐:svnbucket.com.Svn桶(现在最好用的SVN服务)
安装sVN客户端
Tortoisesvn,cornstone
1.下載最新版本客戶端
2.下載汉化包
先安装客户端,一直点下一步即可
再安装汉化包,最后一个需要勾选
svw基本操作:
检出checkout
1.新建项目
2.复制项目地址
3.右键选择检出,并填写地址与账号密码;
新增add,提交commit
1.添加文件
2.选择更新上传,填写详细信息
更新update(建议:每次提交前都需要更新一下)
1.改写任意一个文件代码
2.右键→提交(提交前可以双击查看修改的地方)
历史记录
撤销和恢复
撤销本地
方法一
选择已经修改的文件
方法二
1.选择svn提交
2.选择已经修改的文件,右键还原
修改撤销已提交内容
1.查看日志找到最近提交的记录,查看修改代码,确认是否需要撤销
2.右键→复原此版本做出的修改
3.本地由绿勾变为红感叹号(撤销只是在本地撤销,还需要再次提交)
4.再次提交
恢复到指定版本
1.复原到想要恢复的版本
2.再次提交
3.查看日志是否已经还原
添加/删除忽略
某个大项目中选择某些文件不提交,只提交更新部分
添加忽略
方法一
1.选择忽略文件,并添加忽略
2.提交,填写详细信息
3.最后即不会有绿勾,也不会有红感叹号(即未提交上去)
方法二
在点击提交后,选择某个文件添加到忽略中
删除忽略
1.选择文件从忽略列表删除
2.再次提交
冲突
发生情况:多个人修改了同个文件的同一行无法进行合并的二进制文件
避免方法:经常update同步下他人的代码二进制文件不要多个人同时操作
解决冲突:解决冲突很简单,不用怕
情况一
点击更新时会出现多个文件(冲突产生)
解决方法:
方法一
把自己的版本丢弃,直接用对方的版本
方法二
方法三(更可靠)
1.编辑冲突
2.对比,选择正确的代码进行更新
3.对比修改后标记为解决
情况二
二进制文件(例如图片)修改更新冲突,
解决方法(与上面类似,这里选其中一种方法解决)
编辑冲突 并选择正确的文件
分支
分支的作用
隔离线上版本和开发版本
大功能开发时:不想影响到其他人,自己独立开个分支去开发
SVN经典目录结构:
trunk(主干)
branches(分支)
tags
1.手工创建
2.创建项目是勾选下面这个框;
开分支
1.主干开发完成上线开分支
2.选择保存位置,填写信息,勾选最新版本,提交
3.更新文件,即可看到刚刚开辟的分支
解决分支变多问题
将分支和主干单独分出来
1.复制地址
2.回到最顶层文件目录,检出分支(也可将主干检出)
3.最后删除包含主干和分支的文件。
分支合并到主干
一般用于解决,上线项目修复bug后 合并到其他分支;
可以合并多个也可以合并一个,这里选择合并一条;
1.
2.选择合并版本
3.合并完成显示红色感叹号,再选择提交(填写版本更新信息)
切换分支
1.选择需要切换版本的文件夹
2.切换分支可选
切换成功后文件替换了,但原本的文件夹名字不会改变;
3.查看目录结构
代码暂存
使用场景
1.代码改了很多,突然需要紧急修复一个bug,但是代码还没写完,不能提交。
2.代码重构了很多,突然需要发布新版本,但是代码还跑不起来,不能提交。|
具体步骤
复杂代码合并
使用情况
1.主干开发新功能,改很多
2.分支是线上版本,修复了很多bug
3.两个分支的代码时间久了差异很大,无法直接分支合并或者指定提交记录合并代码
解决:使用Beyondcomparc 来对比合并
方法步骤
1.打开Beyondcomparc ,选择需要操作的文件夹
2.选择两个文件,填写目录的具体位置
3.选择两个目录,比较内容
4.双击有差异的文件,进入对比,选择是否修改合并
5.合并完,再提交一遍。
版权归原作者 unstoppableyi 所有, 如有侵权,请联系我们删除。