由于文檔資料越來越多,将所有資料都存放在自己的電腦上容易混淆,并且也不利于分享。這種情況下,考慮将資料上傳SVN統一管理,這樣一來其他人也能很友善的查略各種資料。
當SVN安裝在區域網路内的話,想要遠端通路資料庫或者代碼将會受到限制,為了能從公共網絡通路内網SVN資料庫,cpolar能很好的解決這一需求,cpolar是一個能把内網服務暴露至公網進行通路的工具。
SVN分為服務端和用戶端,服務端主要是做資料資料存儲,用戶端主要是圖形化工具連接配接服務端擷取服務端資料資料,下面介紹在ubuntu系統安裝服務端,再通過用戶端遠端通路。
1. Ubuntu安裝SVN服務
指令行輸入安裝指令:
sudo apt install subversion
檢視svn版本,出現版本資訊表示安裝成功:
svnserve --version
建立版本庫,執行如下系列指令
1.cd /opt
2.sudo mkdir svn
3.cd svn
4.sudo mkdir repository
建立好後輸入以下指令建立倉庫
sudo svnadmin create /opt/svn/repository
建立成功後我們repository目錄下會發現一系列檔案,其中:
- conf檔案夾下是存放的配置檔案,包括SVN使用者名的權限、密碼這些;
- db裡面的包含我們上傳到SVN伺服器上面的文檔、代碼等資料的不同版本。
這裡需要注意的是要對db檔案夾釋放權限,否則用戶端可能無法連接配接SVN伺服器。
輸入以下指令,對db檔案夾釋放權限,釋放成功後db檔案夾會變成綠色
sudo chmod -R 777 db
2. 修改配置檔案
首先修改repository檔案下的conf這個檔案夾裡面的檔案
2.1 修改svnserve.conf檔案
這個檔案裡面主要設定我們的SVN通路方式.輸入編輯指令:
sudo vim svnserve.conf
按”i”鍵進入編輯
解開四個參數的#号注釋
然後按Esc鍵退出編輯,輸入”:wq”儲存退出
2.2 修改passwd檔案
這個檔案主要是添加使用者名和密碼,輸入指令進入編輯:
sudo vim passwd
按”i” 進行編輯
添加以下資訊,賬号密碼可自行定義!
添加完成Esc鍵退出,輸入”:wq”儲存退出.
2.3 修改authz檔案
這個檔案主要是對登入使用者的權限管理,輸入以下指令進入編輯:
sudo vim authz
按”i” 進行編輯
添加如下資訊
然後Esc鍵退出編輯,輸入”:wq”儲存退出
3. 啟動svn服務
輸入以下指令啟動svn
sudo svnserve -d -r /opt/svn/
4. 内網穿透
上面我們在本地Ubuntu虛拟機安裝了svn服務端,但目前隻能在區域網路絡下通路,如離開了區域網路将無法連接配接svn。不過我們可以通過cpolar來實作公網通路,突破區域網路的限制
4.1 安裝cpolar内網穿透
支援一鍵腳本安裝指令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
token認證
登入cpolar官網背景,點選左側的驗證,檢視自己的認證token,之後将token貼在指令行裡:
cpolar authtoken xxxxxxx
向系統添加服務
sudo systemctl enable cpolar
啟動cpolar服務
sudo systemctl start cpolar
4.2 建立隧道映射本地端口
成功啟動cpolar服務後,我們在浏覽器上通路本地9200端口【http://127.0.0.1:9200 】,登入cpolar web UI管理界面。
登入成功後,點選左側儀表盤的隧道管理——建立隧道,建立一個tcp協定的隧道指向本地3690端口:
- 隧道名稱:可自定義,注意不要與已有的隧道名稱重複
- 協定:tcp
- 本地位址:3690
- 域名類型:免費選擇随機域名
- 地區:選擇China VIP
點選建立
隧道建立成功後,點選左側的狀态——線上隧道清單,可以看到,剛剛建立的隧道已經有生成了相應的公網位址,将其複制下來
5. 測試公網通路
官方網站下載下傳svn用戶端:https://tortoisesvn.net/downloads.html
SVN安裝完在桌面滑鼠右鍵,點選svncheckout,輸入我們複制的cpolar公網位址,然後點選ok
輸入我們前面建立的賬号密碼
接着右鍵,這時候出現svn update,點選,沒有出現error即連接配接成功
6. 配置固定公網TCP端口位址
由于以上使用cpolar所建立的隧道使用的是随機公網位址,該位址為随機臨時位址,24小時内會發生變化,不利于長期遠端通路。
為了更好的連接配接,我們可以為其配置二級子域名,該位址為固定位址,不會随機變化
需要注意,配置固定TCP端口位址需要将cpolar更新到專業版套餐或以上。
6.1 保留一個固定的公網TCP端口位址
登入cpolar官網,點選左側的預留,選擇保留的TCP位址,我們先來為遠端SVN保留一個固定端口位址。
- 地區:選擇China VIP
- 描述:即備注,可自定義填寫
點選保留
位址保留成功後,系統會生成相應的固定公網位址,将其複制下來
6.2 配置固定公網TCP端口位址
在浏覽器上通路9200端口,http://127.0.0.1:9200/,登入cpolar web ui管理界面,點選左側儀表盤的隧道管理——隧道清單,找到svn隧道,點選右側的編輯
修改隧道資訊,将保留成功的固定tcp位址配置到隧道中
- 端口類型:修改為固定tcp端口
- 預留的tcp位址:填寫保留成功的位址
點選更新
隧道更新成功後,點選左側儀表盤的狀态——線上隧道清單,找到我的世界隧道,可以看到公網位址已經更新成為了固定tcp位址。
7. 使用固定TCP端口位址遠端SVN服務
右鍵打開relocate
修改連接配接位址,改為固定tcp的位址,修改完點選OK
接着右鍵svn update,點選,沒有出現error即連接配接成功