1.基本介紹
什麼是SVN,能解決什麼問題?
一、 代碼管理混亂。
二、 解決代碼衝突困難。
三、 在代碼整合期間引發BUG。
四、 無法對代碼的擁有者進行權限控制。
五、 項目不同版本發佈困難。
......
管理思想
在一臺服務器上建立一個倉庫,倉庫裏可以存放許多不同項目的源程序,建議使用:也可以一個倉庫對應一個項目。
由倉庫管理員統一管理這些源程序.這樣,就好象只有一個人在 修改文件一樣.避免了衝突.
每個用戶在使用倉庫之前,首先要把倉庫裏的項目文件下載到本地。
用戶做的任何修改首先都是在本地進行,然後用 SVN 命令進行提交,
這樣就可以做到跟蹤文件變化,衝突控制等等。
2.服務端
****svn的服務器端環境安裝:
a.subversion+apache
b.visualsvn-server
安裝到那個目錄:D:\SVN\VisualSVN Server\
倉庫的存放位置:D:\SVN\VisualSVN Server\Repositories\
服務器端口:81
創建組,用戶,配置組使用倉庫的權限
創建倉庫:http://192.168.1.168:81/svn/bbs
trunk:主幹,是日常開發進行的地方,是不穩定的代碼。
branches:分頁控件,上傳組件:分支,一些階段性的release版本,這些版本是可以繼續進行開發和維護的.
tags:項目版本,目錄一般是隻讀的,這裏存儲階段性的發佈版本,只是作爲一個里程碑的版本進行存檔。
3.客戶端基本操作
SVN客戶端安裝和漢化
1.添加文件:added
a.選中文件,或者文件夾,點擊添加按鈕,藍色+號
b.回到添加文件夾的父級目錄,直接點擊提交
2.提交:commit
提交之前:必須先update
3.檢出:checkout。
檢出:http://192.168.1.168:81/svn/bbs
第一次與服務器建立聯繫
4.更新:update
5.導入:import
a.先從http://192.168.1.168:81/svn/bbs/trunk檢出由svn工程,在拷貝項目文件,提交
****b.選中要導入的項目文件夾,右鍵導入http://192.168.1.168:81/svn/bbs/trunk,
刪除原項目文件,使用eclipse導入包含svn信息的項目工程
4.其他操作
*****1.解決衝突
兩個人同時修改一個文件同一行(不是同一行合併),
如果第一個人提交後,第二個人是不能直接提交該文件的。主要原因是爲了防止第二個把第一個人的勞動成果乾掉。
當文件產生衝突的時候,SVN是無法自動幫你解決衝突,
你必須自己去判斷該如何解決這樣的衝突。
解決衝突的過程:
先提交發現有衝突->
用更新的方式得到解決衝突的參考文件-->
根據參考文件解決衝突-->
告訴SVN衝突已經被解決(選中文件夾,點擊已解決:刪除衝突的參考文件)->
提交文件。
2.鎖文件:一般不建議鎖的,公共的dao,service不能讓其他修改
只要是鎖的文件的人沒有解鎖,別人就不能修改此文件
那個用戶鎖的文件,就只有自己才能解鎖
3.忽略文件,不被SVN管理
****a.選中文件夾,通過右鍵菜單(增加一個忽略列表)來忽略某個文件或文件夾(此文件夾是包含svn信息)
b.通過設置,用通配符來忽略一批文件*.class。
***4.設置必須填寫提交的日誌信息
在svn工程裏面,點擊屬性,新建一個屬性tsvn:logminsize
5.查看日誌和獲取以前版本
6.去除.svn的配置信息
a.使用window的搜索.svn,在刪除
*****b.導出:選中svn文件夾,右鍵導出,選擇沒有版本的文件內容
***7.重新定位
原來svn的服務器地址http://localhost:81/svn/ssh
現在svn的服務器地址做了修改:http://192.168.1.250:81/svn/ssh
8.分支:備份里程碑版本
把trank開發版本作爲一個正式版 tags目錄1.0
先選中trank目錄,右鍵點擊分支,修改http://localhost:81/svn/bbs/tags/1.0
*****5.SVN的Eclipse插件
svn eclipse插件安裝
1.help-inserl...
2.eclipse\dropins\site-1.6.17
3.eclipse\dropins\svn.link
-------------------------------------------
上班第一件事情:從服務器把最新的代碼更新update到自己機器
下班最後一件事情:做完一個功能就提交代碼到svn,
提前20-30分鐘把自己機器代碼提交commit到svn服務器,解決文件衝突的問題
不要一天的代碼寫完之後,在下班的時候才提交,按照功能提交代碼,並且寫好註釋.
5.SVN圖標的意義。
藍色問號:詢問是否要納入SVN做管理。
藍色加號:該文件和SVN上的文件不一致,需要你提交該文件到SVN上去。(代表是新建的文件)
綠色的勾:該文件和SVN上得文件一致
紅色的感嘆號:該文件和SVN上得文件內容不一致。(代表是文件受到更改)
黃色感嘆號:代表文件有衝突。
灰色的減號:該文件或文件夾被SVN忽略掉,SVN不會對它進行任何管理。
紅色的叉:該文件在SVN上最新版中不存在了。我們需要UPDATE才能把本地的文件刪除掉。
黃色的鎖:表示當前文件被鎖了,別人就不能修改了。
struts2 svn地址
http://svn.apache.org/repos/asf/struts/struts2/trunk
SVN版本控制學習
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Git配置SSH,並Push到GitHub上的相關流程
禹布衣
2018-08-27 19:13:59
Android Studio- 把項目提交到SVN中操作方法
小白程序媛yezi
2018-08-27 18:21:30
Android Studio- 把SVN項目下載到 本地的 操作方法
小白程序媛yezi
2018-08-27 18:21:30
Android Studio 關聯SVN上傳項目找不到Share Project(Subversion)這個選項
小白程序媛yezi
2018-08-27 18:21:30
【SVN】SVN的下載和安裝
故三殇
2018-08-27 17:44:31
subversion svn 服務安裝啓動
smst1987
2018-08-27 17:03:06
SVN clean up 失敗處理方式,有效
Vampire_shl
2018-08-27 16:54:49
svn“Previous operation has not finished; run 'cleanup' if it was interrupted“報錯的解決方法
wlMa
2018-08-27 15:11:48
MyEclipse中SVN的使用方法
liyc123youxiang
2018-08-27 14:30:38
常見的SVN圖標
Harvest_every_day
2018-08-27 14:29:03
SVN管理項目時拷貝注意
Harvest_every_day
2018-08-27 14:29:02
4、SVN學習之svn的衝突問題
Leopold丶yang
2018-08-27 14:20:56