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:20260731152108:2415:7A54B5FB172B7C38BE1BD1D76256DAB2FCE5D645BFC8A3464D23CCD77B25A7CD.jpg)
(如果你的对话框中没有SVN这一条目,可能是因为你没有安装SVN插件,请安装完成后,在看这篇博客)
2. 创建资源库位置,点击Next进入下图 :
![1550633255544646.png 311814495017903[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144555.60008311656141427031212083192321:20260731152108:2415:DF9E85AF43C2753B15398257B8F25C3B8DDABD980E2A669DA6268B9F1E677C2F.jpg)
输入你SVN服务器的IP地址,包括端口号和文件夹等完整路径
填写服务器IP,点击Next进入下图
![1550633281378775.png 311815487049216[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144555.12080434530539660150277940175007:20260731152108:2415:09EC4EDDFD23F8463E4E5C0E0670AA33084526ACAE79B4F351F92312BB9EE61B.jpg)
点击Next进入下图
![1550633307477189.png 311816036899404[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144555.44645772983468091935535289865642:20260731152108:2415:2BB0EDA7C835252F5A461021B998AC13C8E9B26C2561F6E5BAE2F7D93D6373CA.jpg)
输入用户名/密码,即可成功导入。
选择导入项目
![1550633336844993.png 311816206579721[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143121.54471738250680337125203065589918:20260731152108:2415:EE5D9D11DDD9FF7DA24B8D5DB398E9398A66E36563F6BD43F93C926AEDD986DA.png)
![1550633351619741.png 311816335956268[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143121.30424453364602018569091748753233:20260731152108:2415:17A7ABF2C57E1DFD55958DCAECE03A6B433B1AFA65D4F0C51BBE4D928D533495.png)
![1550633366429349.png 311816405956062[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.15462390448663110644512181293441:20260731152108:2415:B2524E16BAE3547AD2EEAD3ABD244BAE00B0DEBB4BC1AE9AFE4A7FB5E3E1F943.png)
导入完成后,出现如下图所示界面
![1550633390911718.png 311817275485686[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.49301827367951060506638268796250:20260731152108:2415:2BFC32B3541778A75F4337C6F6931427C52441535E5351699FC22395ED54A840.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:20260731152108:2415:03A50B77379F952BB0F41D560C0500E3FA0D3F2DBB8D8616D0FF6B4D519B10B5.png)
(3)弹出页面,确认是否跳转视图。
![1550633439889696.png 031009267982490[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143122.10762062037732776833412142907875:20260731152108:2415:F974ADF17D1AF5F2ADA2639A5E3653D6F75C377443C8592A65D4ECDF78ED082E.png)
(4)如果有更新的话,那么这些更新的文件将会出现在上面。
![1550633466666095.png 040929299232229[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143123.98557853351022114167939383423718:20260731152108:2415:2B65B0ECA78DC73ACC3F51F59961B535C3C454102ECB16D3EAB9F61495F5D288.png)
否则会出现如下图:
![1550633486913880.png 031010075014988[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143123.05065619034087665390092017534861:20260731152108:2415:07F06852759F2651CD15CD339F8232EC8817DE43E36B9A4F0C3FD4339C9936A3.png)
先选择如下图的图标按钮,让视图中只显示更新的文件。
一般是通过 【team->update】
![1550633525143418.png 031041243611863[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20251216143123.31866357906380220524170783090552:20260731152108:2415:23CC108A22A4E31C4434B68039ED47E6920E78E39F1AC6D00E02FBF4B3B4B294.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:20260731152108:2415:437D8056D616804D403021A4E3B3B9C5FE027D31F84D34F6FA209425518B830B.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:20260731152108:2415:B07DC887409773859FB49CEE5F5F08B581CB214BC0EA7DF97505ADF1B2A2E593.jpg)
四、提交(项目修改后的提交)
1) 如果你在本地对文件进行了修改,那么该文件的图标就会被打上"*"
![1550633605356157.png 031818587673688[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144556.97948107380947538103099116051440:20260731152108:2415:6C28500A2BF0703EFE03B41782E84DFB73A0FF98D0EF30B447CDD91487B752DD.jpg)
2) 如果你在本地添加了新文件,那么该文件的图标会被打上"?";
![1550633624431839.png 031818212832672[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144556.10888751473655772325571070480958:20260731152108:2415:1BD66019E7749698D13BE2DA5C191BB13E1BA7ED99B97A5F2672CF30DE4C93A3.jpg)
3).....
当你想提交你更改了的项目,则在需要提交的文件上,点击鼠标右键,按下图所示路径,点击【team->Commit】,<注,不仅可以只在你更改了的文件上进行提交,你也可以在你更改的文件的上层节点上进行提交>选中需要提交的文件,一般一些配置文件是不需要提交的。
![1550633645203142.png 040924260179540[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.01389728464844445727045307784858:20260731152108:2415:E67A6EC89E8E6767A4D84771610BDF87D6E2FED720BE2BDD2FD16C06DBB8A536.jpg)
填写一些备注信息,来管理的你的版本信息
![1550633665248098.png 040925293926879[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.34155622272152274056305339548721:20260731152108:2415:5DA6AB4D597AA9FEF948A8DC044D709A50F708115EAB03DC24238B90C038118B.jpg)
或者:
![1550633685362155.png 031822034708393[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144557.53687595505935116813260252890558:20260731152108:2415:60710D19FF11DD171F080B1F6C77904222E8461E8B747689766244389F711F3E.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:20260731152108:2415:9AF6A019C7A1B0BDD093A9D7B4B0D2F7EEDBC7D682101519666D4E1C71C7630C.jpg)
选中要还原的文件。
![1550633753251691.png 040936545951413[1].png](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.11736591132597085284489355525974:20260731152108:2415:7E8327579F92EE8351D73B8966D9A05FC895AE82B7D3176D9A1B710BA224BB79.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:20260731152108:2415:5B9216CEB5DDF38CFD15F5766392E8E96F6EE06BD189FB0D1477B52549C66C8C.jpg)
2.文件冲突解决办法
1) 编辑冲突的地方。
如何其中的一个是重复的,那么把其中一个人改的删除;
如果添加的是不同的内容,那么俩个需要保留。
![1550633811786724.jpg 697835-20150921174106569-52747200[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.63177856272075411447214225407700:20260731152108:2415:BE4D206F178EE8F48F0D3C72D34DDCE5CCF5ACF79436B73258BF07F0D89D7215.jpg)
2) 标记为冲突解决。
![1550633836834364.jpg 697835-20150921174507678-620696199[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.07031434114416506379955018684745:20260731152108:2415:797CC8C9F3C3BCC6DF3B3E5235BCDB4439CDAC9CCA96045705F4CEBCA77AACA4.jpg)
![1550633860741377.jpg 697835-20150921174519709-549575410[1].jpg](https://fileserver.developer.huaweicloud.com/FileServer/getFile/community/890/862/074/0001543463890862074.20250424144558.69677112330063979636294584237634:20260731152108:2415:94D3BBA2373FBF0AC42C0D77647DCCD404A43DD2F3843F9D0D2D2484AB9CA583.jpg)
3) 解决冲突后进行提交。
4)提交完成。
3.怎么避开文件冲突
修改文件以前一定要对文件进行锁定!
- 点赞
- 收藏
- 关注作者
评论(0)