linux连接svn上代码,代码管理平台介绍、安装svn、客户端上使用svn(linux)、客户端上使用svn(windows)...
代碼管理平臺介紹
代碼管理平臺介紹--svn
版本控制,記錄若干文件內容變化,以便未來查閱特定版本修訂狀況.
好比某一個業務,須要不斷更新,好比產品經理這周提交了產品新的需求,改動了一些代碼,咱們把新的代碼上傳到服務器上去,這時候去訪問網站就產生了新的變化. 可能咱們天天都有不少的代碼須要更新,假如某天想要看幾個月前某個業務都更新了哪些地方、都改了哪些功能,想要作一個統計,那就須要去翻看日志,若是這些日志存在還能找到,若這些日志都不存在,那么前面的變動就什么都不知道了. 有了這些代碼管理平臺以后,能夠便咱們查看前面作了哪些變動以及記錄,且支持協同開發.
Svn全稱subversion,是一個開源版本控制系統,最初母的是為了更好管理Linux內核代碼
Git和svn不一樣在于Git不須要依賴服務端就能夠工做,即git是分布式的.
GitHub是基于Git的線下web頁面代碼托管品臺,能夠選擇付費服務
GitLab能夠認為是一個開源的GitHub,二者沒有直接關系
安裝sv
準備兩臺機器:192.168.2.115 -- 服務端
192.168.2.116 -- 客戶端git
下載服務端
[root@root-01 ~]# yum install -y subversion
建立版本庫
建立版本庫的目錄:
[root@root-01 ~]# mkdir -p /data/svnroot/myproject
初始化:
[root@root-01 ~]# svnadmin create /data/svnroot/myproject
初始化后會生成配置文件等:
[root@root-01 ~]# ls -la /data/svnroot/myproject
總用量 8
drwxr-xr-x 6 root root 86 10月 23 11:38 .
drwxr-xr-x 3 root root 23 10月 23 11:34 ..
drwxr-xr-x 2 root root 54 10月 23 11:38 conf
drwxr-sr-x 6 root root 233 10月 23 11:38 db
-r--r--r-- 1 root root 2 10月 23 11:38 format
drwxr-xr-x 2 root root 231 10月 23 11:38 hooks
drwxr-xr-x 2 root root 41 10月 23 11:38 locks
-rw-r--r-- 1 root root 229 10月 23 11:38 README.txt
配置文件目錄:
[root@root-01 ~]# cd /data/svnroot/myproject/conf/
[root@root-01 conf]# ls
authz passwd svnserve.conf
說明:authz 文件是用來控制權限的
passwd 文件是用來定義密碼的
svnserve.conf 是倉庫的配置文件
編輯authz文件
vim authz
在[groups]下面添加:
Anna = user1,user2 Anna是用戶組,用戶組包含了兩個用戶(user1和user2)
[/] 方括號里面的根指的是這個目錄:/data/svnroot/myproject/conf/
@Anna = rw Anna用戶組可讀可寫
* = r 除了Anna用戶組,其余的可讀
另外一種方式:
[myproject:/] [myproject:/] 這表示一個項目,這種方式用在svnroot目錄下有多個項目,也就是指定某個項目
user1 = rw
編輯passwd文件
[root@root-01 conf]# vim passwd
[users]
# harry = harryssecret
# sally = sallyssecret
添加用戶名和密碼:
Anna = 123456
user1 = 586898
user2 = 586898
注:前面是用戶名,后面是密碼
編輯svnserve.conf
vim svnserve.conf
在[general]下面添加:
anon-access = none anon--匿名用戶 沒有任何權限
auth-access = write auth--被受權的用戶 可寫
password-db = passwd 指定用戶密碼的文件是passwd
authz-db = authz 指定用戶權限的文件是authz
realm = /data/svnroot/myproject 表示對應哪一個項目生效
啟動svn
啟動:
[root@root-01 conf]# svnserve -d -r /data/svnroot/
查看進程:
[root@root-01 conf]# ps aux |grep svn
root 3877 0.0 0.0 162188 656 ? Ss 13:48 0:00 svnserve -d -r /data/svnroot/
root 3882 0.0 0.0 112664 968 pts/0 S+ 13:57 0:00 grep --color=auto svn
查看監聽端口3690:
[root@root-01 conf]# netstat -nlpt |grep svn
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 3877/svnserve
客戶端上使用svn(Linux)
下載客戶端
說明:客戶端下載subversion就可使用svn命令web
[root@root-02 ~]# yum install -y subversion
檢索
檢索:
[root@root-02 ~]# cd /home
[root@root-02 svn]# svn checkout svn://192.168.2.115/myproject --username=user1
認證領域: /data/svnroot/myproject
“user1”的密碼:
-----------------------------------------------------------------------
注意! 你的密碼,對于認證域:
/data/svnroot/myproject
只能明文保存在磁盤上! 若是可能的話,請考慮配置你的系統,讓 Subversion
能夠保存加密后的密碼。請參閱文檔以得到詳細信息。
你能夠經過在“/root/.subversion/servers”中設置選項“store-plaintext-passwords”為“yes”或“no”,
來避免再次出現此警告。
-----------------------------------------------------------------------
保存未加密的密碼(yes/no)?yes
取出版本 0。
[root@root-02 home]# ls
myproject
客戶端更新的文件上傳到服務端
說明:是在客戶端操做vim
[root@root-02 ~]# cd /home/myproject
拷貝文件:
[root@root-02 myproject]# cp /etc/favicon.png .
增長:
[root@root-02 myproject]# svn add ./favicon.png
A (bin) favicon.png
上傳到服務端:
[root@root-02 myproject]# svn commit -m "add favicon.png"
正在增長 (二進制) favicon.png
傳輸文件數據.
提交后的版本為 2。
查看服務端
服務端本地是沒法顯示剛客戶端上傳的文件:
[root@root-01 ~]# cd /home/svntest/myproject
[root@root-01 myproject]# ls
升級能夠看到客戶端上傳的文件:
[root@root-01 myproject]# svn up
正在升級 '.':
A favicon.png
更新到版本 2。
[root@root-01 myproject]# ls
favicon.png
客戶端上使用svn(windows)
下載svn
svn官網:https://tortoisesvn.net/windows
點擊DE EN ZH --> 點擊下載 --> 根據系統下載32位或64位bash
下載完成后點擊打開,全部都點擊下一步
在桌面建立一個目錄,命名為myproject
點擊右鍵,看看有沒有紅色框框內的兩個圖標,若沒有的話,重啟電腦服務器
點擊svn checkout
說明: 紅色框框內的IP地址和目錄須要填寫 --->點擊oktcp
點擊ok后會彈出認證對話框
填寫用戶名和密碼 -->點擊ok分布式
最后還會彈出一個對話框,點擊ok便可
checkout后,myproject目錄就有兩個文件svn
把客服端的1.txt上傳到服務端
建立1.txt --> 點擊右鍵Tortoise SVN -->點擊Add -->點擊SVNcommit -->會彈出一個對話框,要填寫add 1.txt -->點擊ok --> 再點擊ok網站
查看服務端,升級后就有1.txt
[root@root-01 ~] cd /home/svntest/myproject
升級:
[root@root-01 myproject]# svn up
正在升級 '.':
A 1.txt
更新到版本 5。
[root@root-01 myproject]# ls
123.txt 1.txt favicon.png fstab test.txt
在Linux上建立11.txt,上傳到服務端
[root@root-01 myproject]# vim 11.txt
[root@root-01 myproject]# svn add 11.txt
A 11.txt
[root@root-01 myproject]# svn commit -m "add 11.txt"
正在增長 11.txt
傳輸文件數據.
提交后的版本為 6。
Windows要想查看這個文件,點擊右鍵SVNUpdate便可
總結
以上是生活随笔為你收集整理的linux连接svn上代码,代码管理平台介绍、安装svn、客户端上使用svn(linux)、客户端上使用svn(windows)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编程之美系列之三——计算1的个数
- 下一篇: 波形、频谱和语谱