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