一篇文章学会 SVN
为什么不用 Git 用 SVN?选择哪一个呢
一句话:团队用什么,就选什么
01 简单说说 SVN
首先推荐最好的教程:SVN快速上手教程
1.SVN 是什么?
- 代码版本管理工具
- 它能记住你每次的修改
- 查看素有的修改记录
- 恢复到任何历史版本
- 恢复已经删除的文件
2.SVN 跟 Git 比,有什么优势
- 目录级权限控制,企业安全必备(Git 没有)
- 子目录Checkout,减少不必要的文件检出 (Git 只能把整个仓库都 Checkout 下来)
3.SVN 主要应用
- 开发人员用来做代码的版本管理
- 用来存储一些重要的文件,比如合同
- 公司内部的文件共享,并且能按目录划分权限(不同项目之间划分不同权限,每个人看的目录都不一样)
4.SVN 仓库(服务端)
- 推荐:svnbucker.com,SVN桶
5.SVN 客户端
- TortoiseSVN
- Cornstone
02 SVN 基本操作
- 检出 checkout
- 新增 add
- 提交 commit
- 更新 update
- 历史记录
1.复制仓库地址
2. 在本地新建工作目录
D:\develop\workspace
鼠标右键,选择 SVN 检出
3.项目提交
- 1)右键选择 SVN提交
- 2)修改文件,再次提交
这里有一点特别重要,在 SVN每次更新之前,要养成好习惯,先进行 SVN 更新,来避免冲突。特别重要。
这里有一点特别重要,在 SVN每次更新之前,要养成好习惯,先进行 SVN 更新,来避免冲突。特别重要。
这里有一点特别重要,在 SVN每次更新之前,要养成好习惯,先进行 SVN 更新,来避免冲突。特别重要。
03 撤销和恢复
- 撤销本地修改
- 撤销已提交的内容
- 恢复到指定版本
1.撤销本地修改
- 在没有提交之前,点击 SVN 还原
- 在已经提交后,在日志信息中点击提交的错误版本,点击复原此版本作出的修改(还需要再次提交);
04 添加忽略
略
05 解决冲突
-
什么情况容易发生冲突?
- 多个人修改了同个文件的同一行
- 无法进行合并的二进制文件
-
怎么避免冲突?
- 经常 update 同步下他人的代码
- 二进制文件不要多个人同时操作
-
冲突了怎么办?
- 解决冲突很简单
06 分支
-
什么时候需要开分支?
- 隔离线上版本和开发版本
- 大功能开发,不想影响到其他人,自己独立开个分支去开发
-
SVN 经典目录结构:
- trunk (git 中的 master)
- branches
- tags