本次主要内容:
一 、导入项目 (Checkout)。从svn资源库检出
二 、更新 (Update)
三、锁(对要修改的文件加锁,防止文件冲突)
四、提交(项目修改后的提交)
五、解锁
六、查看历史修改
七、文件还原
八、 文件覆盖
九、 文件冲突
以下是详细的步骤:
一 、导入项目 (Checkout)。从svn资源库检出。
1.点击工具栏上的【File-Import】,进入下图
(如果你的对话框中没有SVN这一条目,可能是因为你没有安装SVN插件,请安装完成后,在看这篇博客)
2. 创建资源库位置,点击Next进入下图 :
输入你SVN服务器的IP地址,包括端口号和文件夹等完整路径
填写服务器IP,点击Next进入下图
点击Next进入下图
输入用户名/密码,即可成功导入。
选择导入项目
导入完成后,出现如下图所示界面
二 、更新 (Update)
(1)为什么要更新?
使用SVN的目的就是多人共享一个最新的目录,如果你不更新直接提交,这段时间有可能别人更新后已经提交了,你没有更新还是老得版本,直接提交后会把别人更新的覆盖掉,所以你在提交的时候最好先更新,更新到最新版本的核对之后再提交。
(2)如何更新?如何保证你的项目和服务器上的代码等一致?
选中项目,然后同步。【team->Synchronize with Repository】
(3)弹出页面,确认是否跳转视图。
(4)如果有更新的话,那么这些更新的文件将会出现在上面。
否则会出现如下图:
先选择如下图的图标按钮,让视图中只显示更新的文件。
一般是通过 【team->update】
svn update 状态含义
A:add,新增
C:conflict,冲突
D:delete,删除
M:modify,本地已经修改
G:modify and merGed,本地文件修改并且和服务器的进行合并
U:update,从服务器更新
R:replace,从服务器替换
I:ignored,忽略
如下图:
三、锁(对要修改的文件加锁,防止文件冲突)
(1)为什么要锁机制?
一直习惯于单枪匹马作战,因此使用 SVN 做版本控制时,就没有协同开发的概念,自然就用不到 SVN 的锁机制了。为了操作的简易性,项目成员修改一个文件时,不需要锁定文件。但是前提条件是,每个人负责一个独立的模块。但是,现在在公司上班就不一样了,几个人做同一个项目,代码就有可能被被人修改。
按下所示,对你将要变更的文件加锁,这样别人就不能提交你加锁了的文件,那么就不会照成文件的冲突,选中文件,然后通过 【team->lock】。
四、提交(项目修改后的提交)
1) 如果你在本地对文件进行了修改,那么该文件的图标就会被打上"*"
2) 如果你在本地添加了新文件,那么该文件的图标会被打上"?";
3).....
当你想提交你更改了的项目,则在需要提交的文件上,点击鼠标右键,按下图所示路径,点击【team->Commit】,<注,不仅可以只在你更改了的文件上进行提交,你也可以在你更改的文件的上层节点上进行提交>选中需要提交的文件,一般一些配置文件是不需要提交的。
填写一些备注信息,来管理的你的版本信息
或者:
五、解锁
当你对文件的操作完成后,要释放该文件,此时就要对文件进行解锁了。在需要解锁的文件上,点击鼠标右键,按下图所示路径,点击【Unlock】,
六、查看历史修改
如果你想观察某个文件的修改历史,可以在文件上,点击鼠标右键,按下图所示路径,点击【Local History】,查看文件的版本信息。会出现该文件的历史修改信息,你可以根据系统提供的文件提交时间,找到你需要的信息。
七、文件还原
当你需要对你的修改进行还原时,点击鼠标右键,按下图所示路径,点击【Local History】,查看文件的版本信息的对比。双击时间查看需要回复的历史记录
八、 文件覆盖
方法如下:
选中要还原的文件。
点击ok即可。
九、 文件冲突
1. 什么是文件冲突
当两个或更多开发人员对同一个文件的某几行做了修改,就会产生冲突。
场景:
A和B同时更新了项目,然后
A修改了JSP文件后进行
1)更新
2)提交
B也修改此JSP文件
然后B在A提交成功后,进行更新,就会产生下图效果 这就是冲突效果。
2.文件冲突解决办法
1) 编辑冲突的地方。
如何其中的一个是重复的,那么把其中一个人改的删除;
如果添加的是不同的内容,那么俩个需要保留。
2) 标记为冲突解决。
3) 解决冲突后进行提交。
4)提交完成。
3.怎么避开文件冲突
修改文件以前一定要对文件进行锁定!