導航:首頁 > 操作系統 > linux查看svn服務

linux查看svn服務

發布時間:2022-12-25 15:33:16

A. linux 搭建SVN伺服器(C/S模式)

Linux System Environment

一、配置阿里雲yum源和epel源
提示: 阿里雲yum源官網 https://developer.aliyun.com/mirror/

二、yum安裝SVN軟體

三、創建SVN版本庫目錄
提示: 自定義此目錄為版本庫目錄,為後面創建版本庫提供存位置

四、創建SVN版本庫

五、創建用戶並設置用戶許可權

六、配置SVN伺服器配置文件
提示: 每一項目參數前面都不要留空格,否則會報錯

七、關閉防火牆及SElinux
提示: 防火牆可以不關閉,放行SVN埠(SVN默認埠3690)

八、啟動SVN服務

九、測試SVN客戶端訪問SVN服務

1、Windows使用TortoiseSVN 客戶端測試

輸入 svn://192.168.201.56:3690/xiaoming (xiaoming是自定義的版本庫名稱)

2、Linux SVN客戶端操作命令

B. 怎麼查看linux伺服器的svn地址

SVN地址就是伺服器內網IP的地址SVN://IP地址

C. linux怎麼重啟svn服務

你可以通過如下命令來進行:
1. 查看svnserver 狀態和pid
2. 殺死進程
kill -9 pid
3. 重新啟動
svnserve -d -r /home/data/svn/
其中 -d 表示守護進程
-r 表示在後台執行

/home/data/svn/ 為 svn的安裝目錄。

希望能幫到你。。。。。。

D. linux伺服器怎麼查看是否安裝svn

svn --version
提示無法識別就是沒安裝,提示版本號就是已經安裝了。

E. linux 搭建的svn伺服器怎麼訪問

舉個例子,命令執行創建:svnadmin create /svn 需要修改配置文件,設置賬號密碼
啟動svn服務:svnserve -d -r /svn
svn://IP/svn 就是你的訪問路徑
pc安裝svn客戶端,通過檢出或者版本庫瀏覽器訪問地址即可

F. linux下怎麼查看svn目錄

1、首先,連接相應linux主機,進入到linux命令行狀態下,等待輸入shell指令。

G. 怎麼用linux命令啟動伺服器svn服務

先轉到SVN的安裝目錄,比如,你安裝在/home/svn 下面。
然後轉到bin目錄下,在這里可以看見一個叫svnserve的文件,我們需要用這個來啟動SVN服務。
試一下svnserve --help,看看這個命令的幫組,其中有-d和-r,分別表示後台運行和數據倉庫目錄。
數據倉庫目錄表示你保存數據的地方,如你將工程的信息保存在/home/svndata下面,這個svndata就是你的數據倉庫目錄。
弄清楚了這些就可以來啟動了:
輸入命令:
svnserve -d -r /home/svndata
後面那個要跟你自己的數據倉庫目錄。
這樣我們就啟動了SVN了,SVN默認監聽的是3690。有時候我們需要更改一下監聽的埠,這時就需要設定一下監聽埠了,按照如下命令來進行:
svnserve --listen-port 9999 -d -r /opt/svndata
這樣我們就把監聽埠改成了9999了,當然你也可以可以把9999改成你自己想監聽的埠~

H. 如何配置自己的Linux svnserver伺服器

通常,很多Linux發行版已經自帶了svn軟體,安裝系統時候選擇即可。因此,本文並不講解如何安裝svn相關軟體,而是重點總結一下如果使用svnserve伺服器來構建自己的代碼倉庫,並且允許別人遠程訪問。本文的整個內容參考了svn手冊。

一、新建並初始化版本庫
1.新建代碼倉庫
# svnadmin create /home/myrepos
這樣,我們就在/home目錄下新建了版本庫myrepos。

2.初始化代碼倉庫
#mkdir -p code/{branches,tags,trunk}
按照svn手冊上的建議,我們版本庫的布局採用branches/tags/trunk這樣的三個目錄。然後可以將代碼直接拷貝的trunk目錄,也可以隨後採用svn add的方式添加。

#svn import code file: ///home/myrepos
將我們構造好的版本庫布局(以及代碼,如果已經拷貝到trunk下的話)提交到版本庫。由於這里我們是在本地操作,因此可以直接使用file協議方式提交。格式為:file:// + 版本庫絕對的路徑

OK,到這里我們已經構建了一個本地版本庫,可以再本地使用svn ci的方法得到版本庫的副本了。如果前面只是提交了版本庫布局,而沒有提交代碼的話,則可以通過如下命令,提交版本代碼:
#svn co file: ///home/myrepos/trunk repos
通常只從主線目錄trunk下取出源碼,放在了新建的repos目錄。然後可以將源碼拷貝到repos目錄。
執行以下兩條命令將代碼添加的版本庫。
#svn add *
#svn ci * -m "Committed codes"
首先需要將拷貝的代碼加入到當前的副本中,然後將代碼提交到版本庫。

二、配置並啟動svnserve
1. 配置svnserve
這一步主要完成遠程用戶訪問版本的許可權。
在版本庫目錄下有個conf目錄:home/myrepos/conf,該目錄包含三個文件:authz,passwd,svnserve.conf。
(1)svnserve.conf

此文件重點的設置內容如下:
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
其中,anon-acces s和auth-access分別代表設置匿名用戶和授權用戶的訪問許可權。read代表只讀,write代表可讀可寫,還有一個none,代表禁止訪問。如果不想讓匿名用戶訪問的話,可以設置anon-access = none。
password-db為保存版本庫的用戶名和密碼,通常為conf目錄下的passwd文件。
authz-db指向的文件,主要用於將用戶進行分組,並賦予不同的組不同的許可權。譬如有多個目錄時,設置某個組的用戶只可以訪問其中的那些目錄。
(2)passwd
如前面介紹,這個文件的主要內容如下
[users]
harry = harrysecret
sally = sallyssecret
以上兩行就是可以訪問版本庫的用戶名和密碼。格式為:user = passwd。
(3)authz
[groups]
# harry_and_sally = harry,sally

# [/foo/bar]
# harry = rw
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
以上就是authz文件的格式。先給用戶分組,然後分別設置每個組的工作目錄以及許可權等。
本文的講解並未用到authz的配置。

2. 啟動svnserve
#svnserve -d -r /home/
svnserve將以守護進程的方式運行。同時,通過-r選項指定了版本庫的目錄。這個目錄可以是版本庫的上級目錄(/home),也可以是版本庫的目錄(/home/myrepos)。具體的區別會在後面講到。當然,也可以不用-r指定。

三、遠程訪問svnserve。
假設版本伺服器的地址為10.1.1.1,那麼用戶可以在遠程linux端輸入命令:
#svn checkout svn://10.1.1.1/myrepos myrepos
這樣版本庫的所有內容都被check出來,存放在當前目錄myrepos下。這里相當於使用svn協議,不用搭建http伺服器。

如果啟動svnserve的時候,-r選項指定的是版本庫的目錄,譬如/home/myrepos,那麼檢出版本的時候,執行的命令為:
#svn checkout svn://10.1.1.1/ myrepos

如果啟動svnserve是沒有指定-r選項,則要輸入版本庫的絕對路徑:
#svn checkout svn://10.1.1.1/home/myrepos myrepos

四、容易出現的問題
在訪問svnserve時,遇到了不少的問題,大致總結一下:
1. 這一步最容易避免,一定要記得啟動svnserve。
2. 記得要正確的修改配置文件svnserve.conf和passwd。
3. 保證版本庫伺服器沒有配置限制遠程訪問svnserve的規則。有時在訪問svn伺服器的時候,會提示伺服器積極拒絕鏈接。簡單起見,可以看看iptables -L INPUT和iptables -L OUTPUT有沒有限制訪問的規則。
4. 要保證輸入版本庫的URL正確。

後記:

1. 版本庫的初次導入可以採用多種方式:
(1)直接構建好版本庫目錄,並將源碼拷貝的對應的位置,然後svn import即可;
(2)先用svn checkout取出版本,然後構建目錄和源碼,執行svn add 並且svn commit即可。
2. 導入或者提交文件類型的控制
svn客戶端是可以配置忽略哪些些文件,比如說我們不想提交*.o之類的文件。那麼可以通過設置svn:ignore或者global-ignore來進行過濾相關的文件。通常默認的情況就會過濾掉*.o, *.so,*.a等被svn認為是中間生成的文件。我本人使用的客服端不管是WIN的還是Linux的都是這種默認情況。
但是,如果有時基於某種需要,或者是導入一個別人之前維護的工程,裡面有些*.so,*.a文件必須保留,那麼如果在第一次import的時候全部導入呢?曾經問過有些朋友說,svn add或者svn import是可以直接把這種文件導入到版本庫的。但是我個人進行測試的時候,確實導入不進去,除非你直接svn add這個文件,然後提交應該就可以了。
如果這樣的文件比較多,而且比較分散,那麼如何解決呢?看一下svn import和svn add這兩個命令的幫助,都有--no-ignore選項。這個選項的功能就是執行相應動作的時候,不忽略任何文件。那麼執行以下兩條命令:
svn import [source] [repository] --no-ignore

svn add [source] --no-ignore
會自動將source目錄下所有的內容全部import或者add。

因此,通過--no-ignore選項,可以滿足提交一些特殊文件的需求。

3. 用一個舊版本的svnadmin創建的版本庫,直接拷貝到另外一台svn版本比較高的PC上使用時,發現提示資料庫版本不匹配。解決的方法:
(1)導出舊的版本庫內容,包含版本信息
具體使用的命令為svnadmin mp, 詳細使用方法參考手冊。該命令的格式為:
svnadmin mp REPOS_PATH [-r LOWER[:UPPER]] [--incremental]
如果我將版本庫完整的信息都倒出來的話,執行如下命令:
# svnadmin mp old_repos > repos.mp

默認版本庫mp的時候是輸出在終端的,通過重定下輸出到repos.mp文件裡面。該文件實際是文本文件。
(2)導入舊版本庫的內容
在需要導入的位置,新建一個版本庫
# svnadmin create new_repos
然後將repos.mp文件導入到新的版本庫:
# svnadmin load new_repos < repos.mp
該命令成功執行完畢之後,新的版本庫中已經包含了old_repos版本庫中的所有版本內容。
svnadmin mp和svnadmin load命令都支持導入/導出某個指定revsion或者某個指定范圍的所有revision

I. 在linux下查詢/關閉/啟動svn服務進程

查詢SVN服務進程號

# ps -ef|grep svnserve

查出SVN服務進程後,如果要關閉SVN服務,使用如下命令

# kill 進程號

如果要啟動SVN服務,使用如下命令

# svnserve -d -r /data/svn

其中/data/svn為SVN版本庫所在的路徑

J. linux配置SVN,添加用戶,配置用戶組的許可權

用xshell登陸伺服器,cd切換到伺服器中svn的項目倉庫目錄中,然後切換到conf文件中(也可使用xftp),會看到3個文件,分別是

authz、passwd、svnserve.conf

首先編輯svnserve.conf主配置文件,主要是對以下幾項修改

如果後面大家要用到組許可權的話,大家看authz-db = authz 前面應該會有 # 號鍵,記得去掉,這樣才能在下面分配組許可權的時候,才能起作用。

建立svn用戶以及密碼:

配置組:

配置各個組許可權:

保存修改後的svnserve.conf ,passwd,authz 三個文件

然後用下面的命令重啟一下svn

查看svn進程:ps -ef | grep svn 或者 ps aux | grep svn

強制殺死進程:kill -9 進程號

重啟svn(/home/svn為自己的目錄地址):svnserve -d -r /home/svn

最後看看是不是成功了,可以在本地測試一下,看看賬戶是否可用,對應的許可權是不是已經有了,不是該組的用戶應該不能訪問沒有賦予許可權的目錄的

helloword倉庫:

現在對於def項目中,我不想讓產品部的人看到開發部和數據部的目錄下面的數據怎麼辦?可以通過 = 來設置,沒有設置許可權的人統統不能訪問, = 這一句的目的,就是割斷許可權繼承性,使得管理員可以定製某個目錄及其子目錄的許可權,從而完全避開其父目錄許可權設置的影響

閱讀全文

與linux查看svn服務相關的資料

熱點內容
單片機的原理概述 瀏覽:506
火控pdf 瀏覽:267
如何復制雲伺服器centos環境 瀏覽:984
債權pdf 瀏覽:299
紅色番字的app怎麼下載 瀏覽:876
雲伺服器流程教課 瀏覽:702
中國農業銀行app怎麼沒有網 瀏覽:997
幾率表演算法 瀏覽:902
程序員理工科 瀏覽:708
企業郵箱登錄收件伺服器地址 瀏覽:558
計算機思維與演算法設計的重要性 瀏覽:664
linux刷新磁碟命令 瀏覽:76
我的世界如何查看伺服器種子pc 瀏覽:284
linuxlamp編譯安裝 瀏覽:609
枚舉演算法ppt 瀏覽:184
cmd查看進程命令 瀏覽:956
手機內怎麼刪除APP 瀏覽:834
魚群和鳥群演算法區別 瀏覽:93
pdf尺寸設置 瀏覽:211
android訪問本地伺服器 瀏覽:512