MyEclipse中SVN的常见的使用方法
本次主要内容:
一 、导入项目 (Checkout)。从svn资源库检出
二 、更新 (Update)
三、锁(对要修改的文件加锁,防止文件冲突)
四、提交(项目修改后的提交)
五、解锁
六、查看历史修改
七、文件还原
八、 文件覆盖
九、 文件冲突
以下是详细的步骤:
一 、导入项目 (Checkout)。从svn资源库检出。
1.点击工具栏上的【File-Import】,进入下图
![1550633230237613.png 311814365171670[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144554.44710988680461103997875189363515:20260126175459:2415:D73C0403DEDDAEC66ABBAAFA28A59F0910DCF551CE7D8E80156BAF3B25A378E2.jpg)
(如果你的对话框中没有SVN这一条目,可能是因为你没有安装SVN插件,请安装完成后,在看这篇博客)
2. 创建资源库位置,点击Next进入下图 :
![1550633255544646.png 311814495017903[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144555.60008311656141427031212083192321:20260126175459:2415:778D183ECE65AB27FC11A7C5C3C7A407DCE1835E8A50598E2926A063FEDE0B43.jpg)
输入你SVN服务器的IP地址,包括端口号和文件夹等完整路径
填写服务器IP,点击Next进入下图
![1550633281378775.png 311815487049216[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144555.12080434530539660150277940175007:20260126175459:2415:E437C6B861ADD25A93B49645B85F10673BB6A6C45B9062CDE1F90333992C85EA.jpg)
点击Next进入下图
![1550633307477189.png 311816036899404[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144555.44645772983468091935535289865642:20260126175459:2415:DA9694A18C79029F2F1CB5371F036F96E9683E42C18EFD5FC8EE924C3D9DBA37.jpg)
输入用户名/密码,即可成功导入。
选择导入项目
![1550633336844993.png 311816206579721[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143121.54471738250680337125203065589918:20260126175459:2415:B011782E0077E4EC017878720C9DB19930D4E64DFADD81ABCE6CF5282910CFC1.png)
![1550633351619741.png 311816335956268[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143121.30424453364602018569091748753233:20260126175459:2415:692BEA1078BAB83EE20EB338667E7FC1A4B2F0A79958B3FE0F5FB0EFD6AC62C7.png)
![1550633366429349.png 311816405956062[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.15462390448663110644512181293441:20260126175459:2415:D881A961AD3C9AFD9CA5BE093F954DEDB4F03A362391A39F0A3C65E4ABF023B1.png)
导入完成后,出现如下图所示界面
![1550633390911718.png 311817275485686[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.49301827367951060506638268796250:20260126175459:2415:8B140DE39D73E7D219003597B1C4FEF30A2B0DEE70C8A2C6E20C6A94821C235F.png)
二 、更新 (Update)
(1)为什么要更新?
使用SVN的目的就是多人共享一个最新的目录,如果你不更新直接提交,这段时间有可能别人更新后已经提交了,你没有更新还是老得版本,直接提交后会把别人更新的覆盖掉,所以你在提交的时候最好先更新,更新到最新版本的核对之后再提交。
(2)如何更新?如何保证你的项目和服务器上的代码等一致?
选中项目,然后同步。【team->Synchronize with Repository】
![1550633417892371.png 030912172054983[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.45095294987768947489829386952703:20260126175459:2415:7DA78AF8D10A9B66B8D94E0C32D235D994ADD779D209B83A3298C947BB945D1F.png)
(3)弹出页面,确认是否跳转视图。
![1550633439889696.png 031009267982490[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.10762062037732776833412142907875:20260126175459:2415:7C2627F37937DAFE7A4B9F21F9F2C0F48775523AF07E63FA2BA871E22C0DD00F.png)
(4)如果有更新的话,那么这些更新的文件将会出现在上面。
![1550633466666095.png 040929299232229[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143123.98557853351022114167939383423718:20260126175459:2415:879C41DD9B33EC24EBDA122804D11434CCD7D48508D3BB1E680F717074D8FE09.png)
否则会出现如下图:
![1550633486913880.png 031010075014988[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143123.05065619034087665390092017534861:20260126175459:2415:AE37E5D3B9A8B8922810EE404835ECCA1934B95F2F29024C84D8DDFD0A65B430.png)
先选择如下图的图标按钮,让视图中只显示更新的文件。
一般是通过 【team->update】
![1550633525143418.png 031041243611863[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143123.31866357906380220524170783090552:20260126175459:2415:88A4F14BDDAA10766E52B60EDAF2EE11860E8FC26CA27B7E8D631E8B2E09B50A.png)
svn update 状态含义
A:add,新增
C:conflict,冲突
D:delete,删除
M:modify,本地已经修改
G:modify and merGed,本地文件修改并且和服务器的进行合并
U:update,从服务器更新
R:replace,从服务器替换
I:ignored,忽略
如下图:
![1550633555488561.jpg 697835-20150921174958209-1335560726[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144556.63467310852910342845051746948057:20260126175459:2415:9418C93529291976D5DEB35351E73F956939D00C1F520C814B70A58F78A00DCD.jpg)
三、锁(对要修改的文件加锁,防止文件冲突)
(1)为什么要锁机制?
一直习惯于单枪匹马作战,因此使用 SVN 做版本控制时,就没有协同开发的概念,自然就用不到 SVN 的锁机制了。为了操作的简易性,项目成员修改一个文件时,不需要锁定文件。但是前提条件是,每个人负责一个独立的模块。但是,现在在公司上班就不一样了,几个人做同一个项目,代码就有可能被被人修改。
按下所示,对你将要变更的文件加锁,这样别人就不能提交你加锁了的文件,那么就不会照成文件的冲突,选中文件,然后通过 【team->lock】。
![1550633582978581.png 031814333452143[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144556.04888676596425221304056594252788:20260126175459:2415:51779A05CA5EF5766D998D42CFFA49D940239F9E2429ACCFF965409216779EFB.jpg)
四、提交(项目修改后的提交)
1) 如果你在本地对文件进行了修改,那么该文件的图标就会被打上"*"
![1550633605356157.png 031818587673688[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144556.97948107380947538103099116051440:20260126175459:2415:BB4CBBDE102663D7FA17A867654875654DD1FFECB5F931C6D75CBF0D70822AFB.jpg)
2) 如果你在本地添加了新文件,那么该文件的图标会被打上"?";
![1550633624431839.png 031818212832672[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144556.10888751473655772325571070480958:20260126175459:2415:077333E599F307B7316F67497ADEBDD685A2E46CE435C0C1B9CA3059D3ECDFB9.jpg)
3).....
当你想提交你更改了的项目,则在需要提交的文件上,点击鼠标右键,按下图所示路径,点击【team->Commit】,<注,不仅可以只在你更改了的文件上进行提交,你也可以在你更改的文件的上层节点上进行提交>选中需要提交的文件,一般一些配置文件是不需要提交的。
![1550633645203142.png 040924260179540[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.01389728464844445727045307784858:20260126175459:2415:725224BA2EAF638ED19358E7F3AB1B128EB38F12953E681C30D2FFFE3D2274C9.jpg)
填写一些备注信息,来管理的你的版本信息
![1550633665248098.png 040925293926879[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.34155622272152274056305339548721:20260126175459:2415:0C71DAD000A36455D80478890B3F6682FD6161A89E739359F4A9FE07C9CBF2FA.jpg)
或者:
![1550633685362155.png 031822034708393[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.53687595505935116813260252890558:20260126175459:2415:669453000A0A6B7259249BE8A451F284E782C9FEA2B16C8CAD2740361DCA2C39.jpg)
五、解锁
当你对文件的操作完成后,要释放该文件,此时就要对文件进行解锁了。在需要解锁的文件上,点击鼠标右键,按下图所示路径,点击【Unlock】
六、查看历史修改
如果你想观察某个文件的修改历史,可以在文件上,点击鼠标右键,按下图所示路径,点击【Local History】,查看文件的版本信息。会出现该文件的历史修改信息,你可以根据系统提供的文件提交时间,找到你需要的信息。
七、文件还原
当你需要对你的修改进行还原时,点击鼠标右键,按下图所示路径,点击【Local History】,查看文件的版本信息的对比。双击时间查看需要回复的历史记录
八、 文件覆盖
方法如下:
![1550633734941103.png 040936084861132[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.61528799723028073003901033729524:20260126175459:2415:548B9E6EDCBDA1D0BBF3A4EAD93BA1186A42071125D8A9AC2E926E0721CBC6F0.jpg)
选中要还原的文件。
![1550633753251691.png 040936545951413[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.11736591132597085284489355525974:20260126175459:2415:5A28EEFD9A0502E57B7DAAEF7ADD123E7F495540AD8EF9664AE32628E7FC19DA.jpg)
点击ok即可。
九、 文件冲突
1. 什么是文件冲突
当两个或更多开发人员对同一个文件的某几行做了修改,就会产生冲突。
场景:
A和B同时更新了项目,然后
A修改了JSP文件后进行
1)更新
2)提交
B也修改此JSP文件
然后B在A提交成功后,进行更新,就会产生下图效果 这就是冲突效果。
![1550633784556917.jpg 697835-20150921173907006-1927983361[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.78796998648323400965329882262076:20260126175459:2415:17581E1054F16C941BB40B557550C69F16DECB896782F643EB358B8D249D7A5B.jpg)
2.文件冲突解决办法
1) 编辑冲突的地方。
如何其中的一个是重复的,那么把其中一个人改的删除;
如果添加的是不同的内容,那么俩个需要保留。
![1550633811786724.jpg 697835-20150921174106569-52747200[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.63177856272075411447214225407700:20260126175459:2415:CFEB2344A05C10FB28FDF3EB7754AA6F594D0E6F967EB1C774FA8D99138B9881.jpg)
2) 标记为冲突解决。
![1550633836834364.jpg 697835-20150921174507678-620696199[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.07031434114416506379955018684745:20260126175459:2415:03972ABFAA0FA0E0E4BBC1B4F0E3B6161E2FBF84F48782545B70E08B6D6D56B0.jpg)
![1550633860741377.jpg 697835-20150921174519709-549575410[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.69677112330063979636294584237634:20260126175459:2415:723F4F9AD44ACD2850E467A9874ACB58762280D9225780A5F379D7CD923742B4.jpg)
3) 解决冲突后进行提交。
4)提交完成。
3.怎么避开文件冲突
修改文件以前一定要对文件进行锁定!
- 点赞
- 收藏
- 关注作者
评论(0)