ubuntu 下面 svn 伺服器端和客戶端的配置和使用
一、伺服器端的配置
1、首先安裝SVN這個軟體
apt-get install subversion(其實伺服器端和客戶端都是這一個軟體,只是配置不同)
2、在home目錄下建立一個名為svn的資料夾(資料夾的名字隨便起)
mkdir /home/svn
3、建立資料倉儲(可以根據需要建立多個)
svnadmin create /home/svn/test
(倉庫裡面可以放很多專案)
4、啟動svn網路服務
svnserve -d -r /home/svn (不要帶上版本倉庫)
其中 -d 引數讓 svnserve 執行在後臺,-r 引數限定了資料倉儲,在網路上可以訪問的地址。 /home/svn指定svn資料倉儲存放的目錄位置
5、設定svn: 方式的訪問許可權
在每個資料倉儲目錄下都有一堆目錄,進入 conf 並開啟 svnserve.conf 這個檔案,找到以下幾行,
並把前面的註解符號 ‘#’ 去掉,注意千萬在每行的前面別留任何空格。
anon-access = read auth-access = write password-db = passwd
其中 anon-access 和 auth-access 分別為匿名和有許可權使用者的許可權,預設給匿名使用者只讀的許可權。
但如果想拒絕匿名使用者的訪問,只需把 anon-access的read 改成 none 就能達到目的。
password-db 後的 passwd 則為定義使用者名稱及密碼的檔案路徑。這個檔案預設跟 snvserve.conf 在
同一個目錄,下面看看怎麼配置 passwd檔案中的內容。
[user] # harry = harryssecret # sally = sallyssecret
harry 和 sally 這兩行分別定義了可以對 repo 進行寫入的使用者的使用者名稱和密碼。我們可以在下面加上自己的使用者名稱和密碼,比如
zhangsan = zhangsan
這樣就給了使用者 testsvn 往 repo 中寫的許可權。存檔退出後,svn 伺服器就算正式可以執行了!
把所有需要管理的專案都放在 /home/svn這個目錄下,像正常那樣用 svnadmin create 命令建立資料倉庫。
這樣就可以使用svn客戶端通過 “svn co svn://IP地址/資料倉儲目錄” 的方式把伺服器上的資料倉儲拉到本地了。
最近升級了下linode,發現svn 不能提交和更新,報svn: E000061: Unable to connect to a repository at URL這樣的錯誤,後來查了些資料,原來是svn的埠沒有開啟,svn的預設埠是3690,
在ubuntu裡檢視埠開啟情況,命令是netstat -anp |grep 3690,
檢視程式的命令:ps -ef |grep "svn"
把svn服務重新啟動下就可以了,命令為svnserve -d -r /home/svn
5、用improt 匯入工程 1. 命令為:svn import /home/username/myproject svn://192.168.1.1:3690/test/edusoho -m "我的工程" 注意: (1)
1、將檔案checkout到本地目錄(我注:checkout最新版,若要checkout其他版本請用update)
2、往版本庫中新增新的檔案
3、將改動的檔案提交到版本庫
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果選擇了保持鎖,就使用–no-unlock開關) 例如:svn commit -m “add test file for my test“ test.php 簡寫:svn ci
4、加鎖/解鎖
5、更新到某個版本
6、檢視檔案或者目錄狀態(我注:這是一條本地命令,用來顯示自己改動了哪些檔案)
7、刪除檔案
8、檢視日誌
9、檢視檔案詳細資訊
10、比較差異
11、將兩個版本之間的差異合併到當前檔案
12、SVN 幫助
——————————————————————————
以上是常用命令,下面寫幾個不經常用的
——————————————————————————
13、版本庫下的檔案和目錄列表
14、建立納入版本控制下的新目錄
15、恢復本地修改
16、程式碼庫URL變更
1、更新你的工作副本,對映到一個新的URL,其行為跟“svn update”很像,也會將 伺服器上檔案與本地檔案合併。這是將工作副本對應到同一倉庫中某個分支或者標記的 方法。 2、改寫工作副本的URL後設資料,以反映單純的URL上的改變。當倉庫的根URL變動 (比如方案名或是主機名稱變動),但是工作副本仍舊對映到同一倉庫的同一目錄時使用 這個命令更新工作副本與倉庫的對應關係。
17、解決衝突
18、輸出指定檔案或URL的內容。
svn cat 目標[@版本]…如果指定了版本,將從指定的版本開始查詢。 svn cat -r PREV filename > filename (PREV 是上一版本,也可以寫具體版本號,這樣輸出結果是可以提交的)
相關文章
- SmartSVN for Mac(SVN客戶端)Mac客戶端
- MQTT伺服器搭建服務端和客戶端MQQT伺服器服務端客戶端
- SmartSVN 14 Mac(SVN客戶端)Mac客戶端
- 郵件客戶端的配置使用客戶端
- Eureka高可用叢集服務端和客戶端配置服務端客戶端
- 使用Apollo Server搭建GraphQL的服務端和客戶端Server服務端客戶端
- Linux下簡單的ACE socket客戶端和伺服器端Linux客戶端伺服器
- 如何在 Linux 上安裝、配置 NTP 伺服器和客戶端?Linux伺服器客戶端
- YUM源伺服器搭建與客戶端配置使用伺服器客戶端
- React 伺服器端渲染和客戶端渲染效果對比React伺服器客戶端
- Redis原始碼剖析——客戶端和伺服器Redis原始碼客戶端伺服器
- Web 應用客戶端渲染和伺服器端渲染的比較Web客戶端伺服器
- 服務端渲染和客戶端渲染服務端客戶端
- NBU 8.0客戶端安裝和備份配置客戶端
- 【SpringCloud】Ribbon如何自定義客戶端配置和全域性配置SpringGCCloud客戶端
- UE 客戶端和伺服器上的時間同步客戶端伺服器
- ubuntu17.4安裝git伺服器,window使用sourcetree客戶端UbuntuGit伺服器客戶端
- python建立tcp服務端和客戶端PythonTCP服務端客戶端
- Java UDP伺服器和客戶端原始碼 -javarevisitedJavaUDP伺服器客戶端原始碼
- 如何安裝和配置 Chrony 作為 NTP 客戶端?客戶端
- ElectronMail:ProtonMail 和 Tutanota 的桌面客戶端AI客戶端
- SnailSVNPro for mac(SVN客戶端) v1.10版AIMac客戶端
- 物理DataGuard客戶端無縫切換--客戶端TAF 配置客戶端
- Netty入門系列(1) --使用Netty搭建服務端和客戶端Netty服務端客戶端
- XShell 客戶端和工具MobaXterm工具客戶端
- Angular Universal 學習筆記 - 客戶端渲染和伺服器端渲染的區別Angular筆記客戶端伺服器
- SVN客戶端下載和SVN visual studio 外掛客戶端
- Tomcat配置Gizp 客戶端使用okHttp3Tomcat客戶端HTTP
- 一個端到端的基於 form 表單的檔案上傳程式,包含客戶端和伺服器端ORM客戶端伺服器
- 客戶端svn上傳後,原始檔案在伺服器的什麼位置?客戶端伺服器
- netty系列之:自建客戶端和HTTP伺服器互動Netty客戶端HTTP伺服器
- ASP.NET Core 中建立 gRPC 客戶端和伺服器ASP.NETRPC客戶端伺服器
- FastDFS伺服器叢集部署和整合客戶端到SpringBootAST伺服器客戶端Spring Boot
- 使用Netty實現HTTP2伺服器/客戶端的原始碼和教程 - BaeldungNettyHTTP伺服器客戶端原始碼
- 分散式配置中心客戶端分散式客戶端
- SnailSVN 專業版:與訪達整合的 SVN 客戶端AI客戶端
- 使用 WebSocket 客戶端連線 MQTT 伺服器Web客戶端MQQT伺服器
- SVN客戶端:SmartSVN for Mac v14.4啟用版客戶端Mac
- 深入剖析Redis客戶端Jedis的特性和原理Redis客戶端