2—-svn介紹和常用命令
一,subverison介紹
svn版本管理工具管理著隨時間改變的各種資料庫,資料放置在repository中;svn會備份並記錄每個檔案每一次的修改 更新變動。
svn工作流程:
1,在中央庫上建立或從主幹複製一個分支
2,從中央庫check out 下這個分支的程式碼
3,增加自己的程式碼檔案,修改現存的程式碼或刪除程式碼檔案
4,commit程式碼,假設有人在剛剛的分支上提交了程式碼,你就會被提示程式碼過期
先up你的程式碼後再提交,up程式碼時候出現 衝突,需要解決好衝突後再提交
svn官網,文件,下載地址
http://subversion.apache.org/
http://subversion.apache.org/docs/
http://subversion.apache.org/download.cgi
http://svnbook.red-bean.com/
http://www.iusesvn.com/
windows下svn客戶端文件,下載地址
https://tortoisesvn.net/
https://tortoisesvn.net/docs/
https://tortoisesvn.net/downloads.html
二,svn服務端執行方式與訪問方式
1,獨立執行
svn://svn.test.com/test
2,藉助apache等http服務
http://svn.test.com/test
1,單獨安裝apache+svn
2,CSVN是一個單獨的整合的軟體,帶web介面管理的SVN軟體
3,本地直接訪問
file:///application/svndata/test
三,svn儲存資料方式:
1,BDB
2,FSFS:二進位制檔案,所以看不見程式碼
四,svn常用命令:
1、將檔案checkout到本地目錄
svn checkout svnpath localpath (svnpath就是版本庫路徑)
簡寫:svn co svnpath localpath
例如:
svn checkout file:///data0/svn/showyw / /data0/web_root/showyw
2、版本庫下的檔案和目錄列表
svn list path
顯示path目錄下的所有屬於版本庫的檔案和目錄
svn list file:///data0/svn/youdao –verbose
3、往版本庫中新增新的檔案
svn add filename1 filename2 filename3
例如:
cd /data0/web_root/showyw
svn add test.php(新增test.php)
svn add *.php(新增當前目錄下所有的php檔案)
4、將改動的檔案提交到版本庫
svn commit -m “LogMessage” PATH
例如:
cd /data0/web_root/showyw
svn ci
svn commit -m “add test file for my test” test.php
5、更新到某個版本
svn update -r m path
例如:
svn update如果後面沒有目錄,預設將當前目錄以及子目錄下的所有檔案都更新到最新版本。
svn update -r 3 test.php(將版本庫中的檔案test.php還原到版本3)
svn update test.php(更新,於版本庫同步。如果在提交的時候提示過期的話,是因為衝突,需要先update,修改檔案,然後清除svn resolved,最後再提交commit)
6、刪除檔案
svn delete path -m “delete test fle”
例如:
svn delete test.php 然後再 svn ci -m `delete test file`
7、檢視檔案或者目錄狀態
1)svn status path(目錄下的檔案和子目錄的狀態,正常狀態不顯示)
【?:不在svn的控制中;M:內容被修改;C:發生衝突;A:預定加入到版本庫;K:被鎖定】
2)svn status -v path(顯示檔案和子目錄狀態)
第一列保持相同,第二列顯示工作版本號,第三和第四列顯示最後一次修改的版本號和修改人。
注:svn status、svn diff和 svn revert這三條命令在沒有網路的情況下也可以執行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。
8、檢視日誌
svn log path
例如:svn log test.php 顯示這個檔案的所有修改記錄,及其版本號的變化
9、檢視檔案詳細資訊
svn info path
例如:svn info test.php
10、比較差異
svn diff path(將修改的檔案與基礎版本比較)
例如:svn diff test.php
svn diff -r m:n path(對版本m和版本n比較差異)
例如:svn diff -r 1:2 test.php
11、將兩個版本之間的差異合併到當前檔案
svn merge -r m:n path
例如:svn merge -r 1:2 test.php(將版本1與2之間的差異合併到當前檔案,但是一般都會產生衝突,需要處理一下)
12、SVN 幫助
svn help
svn help ci
svn版本管理工具管理著隨時間改變的各種資料庫,資料放置在repository中;svn會備份並記錄每個檔案每一次的修改 更新變動。
svn工作流程:
1,在中央庫上建立或從主幹複製一個分支
2,從中央庫check out 下這個分支的程式碼
3,增加自己的程式碼檔案,修改現存的程式碼或刪除程式碼檔案
4,commit程式碼,假設有人在剛剛的分支上提交了程式碼,你就會被提示程式碼過期
先up你的程式碼後再提交,up程式碼時候出現 衝突,需要解決好衝突後再提交
svn官網,文件,下載地址
http://subversion.apache.org/
http://subversion.apache.org/docs/
http://subversion.apache.org/download.cgi
http://svnbook.red-bean.com/
http://www.iusesvn.com/
windows下svn客戶端文件,下載地址
https://tortoisesvn.net/
https://tortoisesvn.net/docs/
https://tortoisesvn.net/downloads.html
二,svn服務端執行方式與訪問方式
1,獨立執行
svn://svn.test.com/test
2,藉助apache等http服務
http://svn.test.com/test
1,單獨安裝apache+svn
2,CSVN是一個單獨的整合的軟體,帶web介面管理的SVN軟體
3,本地直接訪問
file:///application/svndata/test
三,svn儲存資料方式:
1,BDB
2,FSFS:二進位制檔案,所以看不見程式碼
四,svn常用命令:
1、將檔案checkout到本地目錄
svn checkout svnpath localpath (svnpath就是版本庫路徑)
簡寫:svn co svnpath localpath
例如:
svn checkout file:///data0/svn/showyw / /data0/web_root/showyw
2、版本庫下的檔案和目錄列表
svn list path
顯示path目錄下的所有屬於版本庫的檔案和目錄
svn list file:///data0/svn/youdao –verbose
3、往版本庫中新增新的檔案
svn add filename1 filename2 filename3
例如:
cd /data0/web_root/showyw
svn add test.php(新增test.php)
svn add *.php(新增當前目錄下所有的php檔案)
4、將改動的檔案提交到版本庫
svn commit -m “LogMessage” PATH
例如:
cd /data0/web_root/showyw
svn ci
svn commit -m “add test file for my test” test.php
5、更新到某個版本
svn update -r m path
例如:
svn update如果後面沒有目錄,預設將當前目錄以及子目錄下的所有檔案都更新到最新版本。
svn update -r 3 test.php(將版本庫中的檔案test.php還原到版本3)
svn update test.php(更新,於版本庫同步。如果在提交的時候提示過期的話,是因為衝突,需要先update,修改檔案,然後清除svn resolved,最後再提交commit)
6、刪除檔案
svn delete path -m “delete test fle”
例如:
svn delete test.php 然後再 svn ci -m `delete test file`
7、檢視檔案或者目錄狀態
1)svn status path(目錄下的檔案和子目錄的狀態,正常狀態不顯示)
【?:不在svn的控制中;M:內容被修改;C:發生衝突;A:預定加入到版本庫;K:被鎖定】
2)svn status -v path(顯示檔案和子目錄狀態)
第一列保持相同,第二列顯示工作版本號,第三和第四列顯示最後一次修改的版本號和修改人。
注:svn status、svn diff和 svn revert這三條命令在沒有網路的情況下也可以執行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。
8、檢視日誌
svn log path
例如:svn log test.php 顯示這個檔案的所有修改記錄,及其版本號的變化
9、檢視檔案詳細資訊
svn info path
例如:svn info test.php
10、比較差異
svn diff path(將修改的檔案與基礎版本比較)
例如:svn diff test.php
svn diff -r m:n path(對版本m和版本n比較差異)
例如:svn diff -r 1:2 test.php
11、將兩個版本之間的差異合併到當前檔案
svn merge -r m:n path
例如:svn merge -r 1:2 test.php(將版本1與2之間的差異合併到當前檔案,但是一般都會產生衝突,需要處理一下)
12、SVN 幫助
svn help
svn help ci
本文轉自 wpf926 51CTO部落格,原文連結:http://blog.51cto.com/wupengfei/1956820,如需轉載請自行聯絡原作者
相關文章
- (2)Docker常用命令介紹Docker
- SVN使用和SVN常用命令
- SVN命令列使用介紹命令列
- Sqoop架構和常用命令介紹OOP架構
- sftp常用命令介紹FTP
- 【Redis】常用命令介紹Redis
- YUM常用命令介紹
- Linux防火牆介紹和iptables常用命令Linux防火牆
- svn常用命令列和批處理命令列
- RPM常用命令介紹
- Git 介紹與常用命令Git
- Redis介紹及常用命令Redis
- Linux常用命令介紹Linux
- SVN常用命令說明
- linux20個常用命令詳解和用法 linux常用命令大全介紹Linux
- redis-2.介紹Redis
- k8s介紹與常用命令K8S
- Linux常用命令介紹(搜尋命令)Linux
- linux伺服器安裝svn超詳細介紹Linux伺服器
- SVN的簡介
- BBED修復資料庫常用命令介紹資料庫
- 【譯文】OAuth 2 介紹OAuth
- SQL Server profiler 介紹2SQLServer
- sqluldr2的介紹SQL
- 防火牆介紹(2)(轉)防火牆
- DB2命令介紹DB2
- BookKeeper 介紹(2)--安裝
- HTTP介紹和HTML簡介HTTPHTML
- Redis介紹和使用Redis
- Lombok介紹和配置Lombok
- 【ASM】asm常用命令及主要功能介紹ASM
- rpm常用命令及rpm引數介紹
- svn,git的對比以及常用命令Git
- 【譯】2分鐘介紹Rx
- (2)Spring Cloud版本介紹SpringCloud
- MQTT QoS 0, 1, 2 介紹MQQT
- 關於 Code::Blocks nightly build svn8982 的新功能介紹BloCUI
- H2 資料庫介紹(2)--使用資料庫