Ⅰ 如何創建svn伺服器 svn創建方法
1、下載綠色版svn(即zip壓縮包文件,如我下的是svn-win32-1.5.6.zip,當然下安裝版的也可以):
2、解壓下載下來的綠色版svn和安裝svn的windows客戶端TortoiseSVN,按照提示安裝就可以,為了能立馬看到效果,最好重啟下機器,呵呵
3、創建版本庫,打開命令窗口(開始->運行,鍵入cmd,回車),我的svn伺服器解壓目錄為F:\svn;在命令窗口輸入:
pushd F:\svn\bin
進入到svn解壓目錄下的bin目錄,建立版本庫,如我把版本庫安裝在:F:\svnrep,首先確認F盤下是否存在svnrep文件夾,沒有我們可以在命令窗口鍵入:
mkdir F:\svnrep
就會創建一個snvrep文件夾,接下來,運行如下命令:
svnadmin create F:\svnrep
這樣我們的版本庫就創建了,在F:\svnrep下你可以看到自動生成了一些文件及文件夾;同時,你也可以用TortoiseSVN的圖形界面來創建,在F:\svnrep文件夾中「右擊->TortoiseSVN->Create Repository here」, 同樣得到我們需要的結果,如果這文件夾已經創建有了,你再創建,會自動報錯。
4、配置用戶和許可權,打開F:\svnrep\conf目錄中的svnserve.conf文件,將[general](保證[general]這一行的前面不帶#號,有#號就將#號去掉)下面的
# password-db = passwd(大概在20行)及# authz-db = authz(大概在27行)
前的#號去掉。保存文件;
然後打開同目錄中的passwd文件(可以用記事本打開),在[users](保證[users]這一行的前面不帶#號,有#號就將#號去掉)下面添加用戶及此用戶對應的密碼,格式為:
admin = password
表示用戶為admin 密碼為password 保存文件。
同時也可以修改同目錄下的authz文件,主要是用來控制用戶對svn版本庫里哪些目錄的文件是否有讀或寫許可權,讀為r寫為w,如果要賦給admin對版本庫下的目錄都有讀和寫許可權,格式為:
[/]
admin = rw
/代表了svn版本庫下的起始位置,對於修改此文件的一些注意事項,可以到網上搜索下呵呵。
5、運行svn伺服器,在命令窗口輸入:
svnserve -d -r F:\svnrep
這樣,svn伺服器程序就啟動了。但不要關閉這個命令窗口,關閉就意味著svn伺服器停止。
6、導入項目到svn版本庫可以用TortoiseSVN客戶端進行導入,在要導入的項目文件夾上「右擊->TortoiseSVN->Import…」在URL of repository輸入
svn://localhost/項目名
在Import Message中可以輸入你的信息,點擊ok按鈕,就開始導入了,完成導入後,項目目錄沒有任何變化,導入過程中沒報錯的話,項目中的所有文件就導入到svn的版本庫里了;這個導入過程可以到任何一台能訪問你svn伺服器並安裝好TortoiseSVN客戶端的電腦上進行,在要導入的文件或文件夾上「右擊右擊->TortoiseSVN->Import…」,在URL of repository 輸入:
svn://svn伺服器IP/項目名
就OK
7、從版本庫中檢出,即復制出一份版本庫中的項目,在一個空的文件夾中「右擊->SVN Checkout」,在URL of repository中輸入:
svn://localhost/項目名
這樣我們就復制出了這個項目中的文件。
8、修改文件後更新到版本庫,當項目中的某一文件作了修改,可以通過在這個文件上「右擊->SVN Commit…」,這樣我們就將我們對這一文件的修改提交到了版本庫。
當然還有很多功能,查看文件修改,比較文件各版本中的修改及不同處,== 不一一介紹了。注意的是TortoiseSVN客戶端版本最好是和svn伺服器的版本一致,有時不一致的時候會發生錯誤。
Ⅱ 怎樣創建SVN倉庫目錄結構
首先在伺服器端創建一個SVN庫,這時是只有一個頂級文件夾的空倉庫,然後:
1、從客戶端checkout這個空的SVN庫;
2、在客戶端checkout出來的這個空文件夾中,按自己的需要新建各級子文件夾,以形成所需的目錄結構;
3、對checkout出來的這個文件夾執行add操作,將新建的各級子文件夾納入SVN控制;
4、對checkout出來的這個文件夾執行commit操作,將剛add進來的各文件夾提交到SVN伺服器端。
基本操作就如上所述了,順便說一下SVN官方推薦的文件夾結構:
根目錄下分成trunk、branches、tags三個子文件夾,其中trunk用於存放開發主幹,branches用於存放各種分支,tags用於存放各種標記。
Ⅲ 如何用命令行創建一個svn用戶
在dos下的命令不太清楚,
只知道在conf文件夾中passwd文件中添加用戶就可以了,格式:
[users]
# harry = harryssecret
# sally = sallyssecret
admin = admin
Ⅳ SVN怎樣建立版本庫
SVN怎麼安裝在這里就不進行詳細地介紹了,網路一下下載之後一直下一步都行。這里主要講解如何建立SVN的版本庫並保持同步更新。
在一個空白的文件夾下,右鍵單擊滑鼠。彈出菜單後點擊有個小烏龜標志的TortoiseSVN——Create repository here。
然後在彈出的菜單中可以看到版本庫的地址, 點擊確定按鈕完成版本庫的建立。
在文件夾下右鍵單擊滑鼠,在彈出的菜單中選擇TortoiseSVN——Repo-browser,可以查看當前版本下的文件目錄及內容。
打開版本的文件目錄後,右鍵點擊根目錄文件,在彈出的菜單中選擇Create folder選項創建根目錄下的文件夾。
輸入文件夾名稱後點擊ok按鈕創建文件夾。
這時會彈出提示框,讓你輸入這個文件夾的這個版本的一些說明,如果沒有需要說明的內容,可不輸入並點擊ok完成文件夾的創建。
版本庫及版本下的文件目錄就創建完成了。
Ⅳ 怎麼在windows系統上裝svn代碼庫
工具/原料 操作系統:Windows2003,32位 SVN Server版本:svn-win32-1.6.16 SVN Client版本:TortoiseSVN-1.6.16.21511 方法/步驟 一、准備工作 1、SVN伺服器:解壓縮包,可以從官方網站下載最新版本。 2、SVN客戶端:TortoiseSVN,即常說的小烏龜,是一個客戶端程序,用來與伺服器端通訊。 二、安裝伺服器和客戶端程序 1、SVN伺服器:直接解壓縮到某個文件夾下即可。示例路徑:c:\svn\ 備註:如果下載的是msi程序,直接運行按提示安裝即可。 2、SVN客戶端:直接運行按提示安裝即可。示例路徑:C:\Program Files\Subversion 三、建立版本庫(Repository):示例路徑:e:\svnroot。建立版本庫有兩種方法: 方法一,建立空目錄e:\svnroot\repos1,進入repos1文件夾,在空白處點擊右鍵,選擇「TortoiseSVN->Create Repositoryhere...」, 方法二,建立空目錄e:\svnroot\repos2,進入DOS命令行,輸入如下命令: svnadmincreate e:\svnroot\repos2 四、運行SVN伺服器,啟動服務。啟動服務有兩種方法: 方法一,臨時啟動服務,在DOS下輸入如下命令: svnserve -d -r e:\svnroot\repos1 --listen-host ip地址 --listen-port=埠號 說明:「listen-host」和「listen-port」可選。默認埠是3690,如果埠已經被佔用,可以通過選項listen-port指定埠號。 注意:請不要關閉命令行窗口,關閉窗口會把 svn服務就停止了。 方法二,啟動SVN服務為後台運行程序: sc create svnserve binPath= "c:\svn\bin\svnserve.exe --service -r e:\svnroot\repos1" displayname= "Subversion" depend=Tcpip start= auto 說明一: (1)sc是windows自帶的服務配置程序。svnserve是服務的名稱,可根據需求取名。 (2)參數binPath表示svnserve可執行文件的安裝路徑。 (3)--service表示以windows服務的形式運行,--r指明svnrepository的位置,service參數與r參數都作為binPath的一部分,因此與svnserve.exe的路徑一起被包含在一對雙引號當中。 (4)displayname表示在windows服務列表中顯示的名字,depend=Tcpip表示svnserve服務的運行需要tcpip服務,start=auto表示開機後自動運行。安裝服務後,svnserve要等下次開機時才會自動運行。 說明二: (1)binPath的等號前面無空格,等號後面有空格。displayname、depend、start也一樣,service前面是--,不是- ,而r前面是-。 (2)若要卸載svn服務,則執行 sc delete svnserve 即可。 (3)從「sc」到「auto」是在同一個命令sc,必須寫在同一行。 (4)啟動服務命令:netstart svnserve,停止服務命令:net start svnserve,也可以進入Windows提供的界面操作SVNService服務了,即控制面板—>服務。 (5)如果路徑中包括空格,一定要用「\」處理「"」號,例如上面的例子中如果svnserve.exe在「c:\programfiles\svn\」中,則命令應該寫為「binpath="\"c:\programfiles\svn\bin\svnserve.exe\" 五、配置用戶和許可權 (1)修改svnserve.conf,在e:\svn\repos1\conf目錄下,用文本編輯器打開svnserve.conf: 將: # anon-access = read # auth-access = write # password-db = passwd 改為 anon-access = read auth-access = write password-db = passwd 注意說明: anon-access等列前面是沒有空格的。 anon-access = read表示沒通過用戶名密碼登錄的訪問只有讀的許可權,如果改為none則沒有用戶名密碼不能訪問 auth-access = write表示通過用戶名密碼登錄的有寫的許可權(當然讀的許可權也就有了) password-db = passwd表示可以通過 用戶名 = 密碼 的方式在passwd文件中添加用戶 (2)修改同目錄的passwd文件,增加用戶帳號: 將: [users] # harry = harryssecret # sally = sallyssecret 添加帳號: [users] # harry = harryssecret # sally = sallyssecret admin = admin 添加一個admin賬戶,密碼是admin。 六、初始化SVN,導入數據 選中要上傳SVN的文件夾,「右鍵 ->TortoiseSVN -> Import...」 ,在彈出對話框的「URL of repository」輸入「svn://localhost/project1/」。在「Importmessage」輸入注釋,點擊OK,要求輸入帳號,輸入賬戶admin和密碼admin。 七,測試SVN 本地測試:新建一空文件夾test1,單擊右鍵,選擇「SVN Checkout」,在「URL of repository」中輸入「svn://localhost/project1」。 其他機器測試:如果運行svnserve的主機IP地址是1.2.3.4,則URL輸入的內容就是「svn://1.2.3.4/project1」。 linux SVN 伺服器配置以及客戶端使用 2010-09-23 11:32:07 標簽:Linux 伺服器 SVN 休閑 客戶端 SVN簡介 SVN是一種版本管理系統,前身是CVS,是開源軟體的基石。即使在溝通充分的情況下,多人維護同一份源代碼的一定也會出現混亂的情況,版本管理系統就是為了解決這些問題。 SVN中的一些概念 : a. repository(源代碼庫) 源代碼統一存放的地方 b. Checkout (提取) 當你手上沒有源代碼的時候,你需要從repository checkout一份 c. Commit (提交) 當你已經修改了代碼,你就需要Commit到repository d. Update (更新) 當你已經Checkout了一份源代碼, Update一下你就可以和Repository上的源代碼同步,你手上的代碼就會有最新的變更 日常開發過程其實就是這樣的(假設你已經Checkout並且已經工作了幾天):Update(獲得最新的代碼) -->作出自己的修改並調試成功 --> Commit(大家就可以看到你的修改了) 如果兩個程序員同時修改了同一個文件呢?SVN可以Merge這兩個程序員的改動,對,合並,實際上SVN管理源代碼是 以行為單位的,就是說兩個程序員只要不是修改了同一行程序,SVN都會自動合並兩種修改。如果是同一行呢,SVN會提示文件Confict, 沖突,需要手動確認。 TortoiseSVN簡介 TortoiseSVN 是 Subversion 版本控制系統的一個免費開源客戶端,可以超越時間的管理文件和目錄。文件保存在中央版本庫,除了能記住文件和目錄的每次修改以外,版本庫非常像普通的文件 伺服器。你可以將文件恢復到過去的版本,並且可以通過檢查歷史知道數據做了哪些修改,誰做的修改。這就是為什麼許多人將 Subversion 和版本控制系統看作一種「時間機器」。 SVN的配置 1,配置好yum,檢查subversion安裝包 [root@svn ~]# yum list grep subversion subversion.i386 1.4.2-4.el5_3.1 base subversion-devel.i386 1.4.2-4.el5_3.1 base subversion-javahl.i386 1.4.2-4.el5_3.1 base subversion-perl.i386 1.4.2-4.el5_3.1 base subversion-ruby.i386 1.4.2-4.el5_3.1 base [root@svn ~]# yum -y install subversion 測試安裝是否成功: #svnserve --version 回車顯示版本說明安裝成功 [root@svn ~]# netstat –nat 查看默認TCP 3690埠是否監聽. 2,創建svn版本庫 [root@svn /]# mkdir -p /data/svndata [root@svn /]# svnadmin create /data/svndata/winne winne為版本庫名稱 3,svnserve配置文件概述 svnserve.conf -- svn服務配置文件,該文件版本庫目錄的conf目錄下。 passwd -- 用戶名口令文件,該文件名在文件svnserve.conf中指定,預設為同目錄下的。 authz -- 許可權配置文件,該文件名也在文件svnserve.conf中指定,預設為同目錄下的。 conf/svnserve.conf 文件 配置項分為以下5項: anon-access 控制非鑒權用戶訪問版本庫的許可權。 auth-access 控制鑒權用戶訪問版本庫的許可權。 password-db 指定用戶名口令文件名。 authz-db 指定許可權配置文件名,通過該文件可以實現以路徑為基礎的訪問控制。 realm 指定版本庫的認證域,即在登錄時提示的認證域名稱。若兩個版本庫的 認證域相同,建議使用相同的用戶名口令數據文件 注:1.4版本anon-access = read 參數的bug . anon-access = read時 客戶端Checkout(提取)的時候會有Not authorized to open root of edit operation"錯誤,改為none參數正常, conf /Passwd 文件 user1 = user1 user2 = user2 conf /authz 文件 [groups] 設置組 admin = user1 [/] 根目錄許可權設置(就是「svndata」這個文件夾) user1 = rw 用戶1許可權是:可讀寫 user2 = r 用戶2許可權是:可讀,不可寫 @admin = rw 設置組許可權 [svndata:/winne] 設置根目錄下「winne」文件夾的許可權 user1 = rw user2 = r …以此類推 4,啟動和停止SVN服務 啟動SVN服務: [root@svn ~]# svnserve -d -r /data/svndata/ -d表示後台運行 -r 指定根目錄是 /data/svndata/ 停止SVN服務: ps -aux grep svn kill -9 進程殺掉 客戶端使用 Windows客戶端TortoiseSVN的使用 1, TortoiseSVN 客戶端的安裝 測試選擇的是TortoiseSVN 1.6.5客戶端 付中文漢化包. 2,客戶端的文件更新至伺服器(user1操作) 新建一個空目錄,右鍵Checkout (提取) svn://192.168.103.26/winne 輸入passwd文件中的授權用戶帳號就可以了 在目錄中加入一些文件測試. 然後在空白地方右鍵點TortoiseSVN-> ADD 添加列表到伺服器端.此時並沒有真正拷貝到伺服器上,需再在Commit(提交)操作才會拷貝 在版本庫瀏覽器中就可以看到剛才提交的文件了,此時提交的版本為1. 3,客戶端在伺服器上拉讀取數據(user2操作) User2 在機器上新建一個空目錄user2 , 右鍵Checkout (提取) 填入地址: svn://192.168.103.26/winne 輸出至G:\user2 確定 增加一個new.txt的文件,然後Commit (提交)之後提示許可權出錯,user2沒有寫的許可權,換成user1 的身份才可以提交成功. Linux客戶端的使用 客戶端操作流程一般是: 用戶A: checkout (提取) -> add (添加新文件) -> commit (提交) 用戶B: SVN log(查看更新) -> update(更新版本) 1,SVN的安裝 yun –y install subversion 2,Linux svn的常用命令 ()內為命令簡寫. checkout (co) 提取 commit (ci) 提交 update (up) 更新 list (ls) 列表 3, checkout (co) 提取 svn伺服器上的文件 (user1)操作流程 [root@TEST ~]# svn co svn://192.168.103.26/winne Authentication realm: <svn://192.168.103.26:3690> My First Repository Password for 'root': Authentication realm: <svn://192.168.103.26:3690> My First Repository Username: user1 /輸入用戶名 Password for 'user1': /輸入密碼 A winne/Cosmic Ride - BeFour.lrc A winne/20070716171657126.pdf A winne/svnbook.pdf revision 1. / checkout (co) 提取成功,看到Checked out版本為1 注:可以使用帶用戶名和密碼的訪問: svn co --username user1 --password user1 svn://192.168.103.26/winne [root@TEST ~]# ll drwxr-xr-x 3 root root 4096 Sep 23 09:02 winne /winne目錄是SVN自動生成的 drwxr-xr-x 2 root root 4096 Jul 30 02:06 tasks [root@TEST ~]# cd winne [root@TEST winne]# ll total 2868 -rw-r--r-- 1 root root 1566968 Sep 23 08:53 20070716171657126.pdf -rw-r--r-- 1 root root 2397 Sep 23 08:53 Cosmic Ride - BeFour.lrc -rw-r--r-- 1 root root 1354300 Sep 23 08:53 svnbook.pdf 4,user1修改文件並提交 [root@TEST winne]# vi testsvn.txt [root@TEST winne]# svn add testsvn.txt /將testsvn.txt添加到庫中 A testsvn.txt [root@TEST winne]# svn commit -m "test" testsvn.txt /注釋為test Adding testsvn.txt Transmitting file data . Committed revision 2. /版本更新為2了 5,user2回window客戶端更新版本 回到Windows的客戶端看日誌, 版本已經更新為2了,注釋test,客戶端update就可以更新到新的版本了. 6, Windows客戶端的版本回滾 選中菜單中的update to verisiom ,選擇版本1即可. 7,Linux版本回滾操作: [root@TEST winne]# svn up -r 1
Ⅵ 如何創建 SVN 伺服器,並搭建自己的 SVN 倉庫
你好。
你是想在windows上搭建還是linux上搭建。
windows上很簡單。下載collabnetsubversion 雙擊安裝即可。
https://www.collab.net/downloads/subversion
安裝完成後 瀏覽器瀏覽 http://localhost:3343/csvn 進入控制台
用戶名密碼 admin admin
LINUX下
安裝1.9
准備工作:
1、安裝編譯工具包
yum install apr* autoconf automake bison bzip2 cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng* libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool libtool* libgomp libxml2 libxml2-devel libXpm* libtiff libtiff* libX* make mpfr ncurses* ntp openssl openssl-devel patch pcre-devel perl php-common php-gd policycoreutils ppl telnet t1lib t1lib* nasm nasm* wget zlib-devel zlib unzip perl-ExtUtils-Embed
2、yum remove apr apr-util subversion subversion-libs #刪除系統中原有的svn及依賴包
3、下載軟體包
https://dist.apache.org/repos/dist/release/apr/apr-1.5.2.tar.gz
https://dist.apache.org/repos/dist/release/apr/apr-util-1.5.4.tar.gz
http://prdownloads.sourceforge.net/scons/scons-2.3.5.tar.gz
http://www.openssl.org/source/openssl-1.0.1o.tar.gz
https://www.apache.org/dist/serf/serf-1.3.9.tar.bz2
http://www.apache.org/dist/subversion/subversion-1.8.13.tar.gz
http://www.sqlite.org/2017/sqlite-amalgamation-3160200.zip
1、安裝apr
cd /usr/local/src #進入軟體包存放目錄
tar zxvf apr-1.5.2.tar.gz #解壓
cd apr-1.5.2 #進入安裝目錄
./configure --prefix=/usr/local/apr #配置
make #編譯
make install #安裝
2、安裝apr-util
cd /usr/local/src
tar zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure --with-apr=/usr/local/apr/bin/apr-1-config
make && make install
3、安裝scons
cd /usr/local/src
tar zxvf scons-2.3.5.tar.gz
cd scons-2.3.5
python setup.py install #配置安裝
4、安裝openssl
cd /usr/local/src
tar zxvf openssl-1.0.1o.tar.gz
cd openssl-1.0.1o
CFLAGS=-fPIC ./config --prefix=/usr/local/openssl enable-shared
make && make install
vi /etc/profile #添加系統環境變數
export PATH=$PATH:/usr/local/openssl/bin >> /etc/profile
#export PATH=$PATH:/usr/local/openssl/bin >> /etc/profile
:wq! #保存退出
source /etc/profile #使配置生效
ln -s /usr/local/openssl/include/openssl /usr/include/openssl #添加系統軟連接
5、安裝serf
cd /usr/local/src
tar -xf serf-1.3.9.tar.bz2
cd serf-1.3.9
scons PREFIX=/usr/local/serf APR=/usr/local/apr/bin/apr-1-config APU=/usr/local/apr/bin/apu-1-config OPENSSL=/usr/local/openssl
scons install
cd /usr/local/serf/lib
cp libserf-1.so* /usr/local/lib/ #拷貝文件到系統目錄
6、安裝svn
cd /usr/local/src
tar zxvf subversion-1.9.5.tar.gz
cd subversion-1.9.5
mkdir /usr/local/src/subversion-1.9.5/sqlite-amalgamation #創建sqlite-amalgamation目錄
cd /usr/local/src
unzip sqlite-amalgamation-3160200.zip -d /usr/local/src/subversion-1.9.5/sqlite-amalgamation
mv /usr/local/src/subversion-1.9.5/sqlite-amalgamation/sqlite-amalgamation-3160200/* /usr/local/src/subversion-1.9.5/sqlite-amalgamation
#解壓sqlite-amalgamation軟體包到sqlite-amalgamation目錄
cd /usr/local/src/subversion-1.9.5
./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-serf=/usr/local/serf --with-openssl=/usr/local/openssl --enable-mod-activation #配置
make #編譯
make install #安裝
vi /etc/profile #添加系統環境變數,添加到最後一行
export PATH=$PATH:/usr/local/svn/bin
:wq! #保存退出
source /etc/profile #使配置立刻生效
whereis libexpat.so.1 #查找文件安裝目錄,如下:
libexpat.so: /lib/libexpat.so.0 /usr/local/lib/libexpat.so /usr/local/lib/libexpat.so.1
vi /etc/ld.so.conf #編輯加入libexpat.so.1的目錄
/usr/local/lib/
:wq! #保存退出
ldconfig #使配置生效
Ⅶ 如何在自己的windows環境中創建svn
一、准備工作
1、SVN伺服器:解壓縮包,可以從官方網站下載最新版本。
2、SVN客戶端:TortoiseSVN,即常說的小烏龜,是一個客戶端程序,用來與伺服器端通訊。
二、安裝伺服器和客戶端程序
1、SVN伺服器:直接解壓縮到某個文件夾下即可。示例路徑:c:\svn\
備註:如果下載的是msi程序,直接運行按提示安裝即可。
2、SVN客戶端:直接運行按提示安裝即可。示例路徑:C:\Program Files\Subversion
三、建立版本庫(Repository):示例路徑:e:\svnroot。建立版本庫有兩種方法:
方法一,建立空目錄e:\svnroot\repos1,進入repos1文件夾,在空白處點擊右鍵,選擇「TortoiseSVN->Create Repositoryhere...」,
方法二,建立空目錄e:\svnroot\repos2,進入DOS命令行,輸入如下命令:
svnadmincreate e:\svnroot\repos2
四、運行SVN伺服器,啟動服務。啟動服務有兩種方法:
方法一,臨時啟動服務,在DOS下輸入如下命令:
svnserve -d -r e:\svnroot\repos1 --listen-host ip地址 --listen-port=埠號
說明:「listen-host」和「listen-port」可選。默認埠是3690,如果埠已經被佔用,可以通過選項listen-port指定埠號。
注意:請不要關閉命令行窗口,關閉窗口會把 svn服務就停止了。
方法二,啟動SVN服務為後台運行程序:
sc create svnserve binPath= "c:\svn\bin\svnserve.exe --service -r e:\svnroot\repos1" displayname= "Subversion" depend=Tcpip start= auto
說明一:
(1)sc是windows自帶的服務配置程序。svnserve是服務的名稱,可根據需求取名。
(2)參數binPath表示svnserve可執行文件的安裝路徑。
(3)--service表示以windows服務的形式運行,--r指明svnrepository的位置,service參數與r參數都作為binPath的一部分,因此與svnserve.exe的路徑一起被包含在一對雙引號當中。
(4)displayname表示在windows服務列表中顯示的名字,depend=Tcpip表示svnserve服務的運行需要tcpip服務,start=auto表示開機後自動運行。安裝服務後,svnserve要等下次開機時才會自動運行。
說明二:
(1)binPath的等號前面無空格,等號後面有空格。displayname、depend、start也一樣,service前面是--,不是- ,而r前面是-。
(2)若要卸載svn服務,則執行 sc delete svnserve 即可。
(3)從「sc」到「auto」是在同一個命令sc,必須寫在同一行。
(4)啟動服務命令:netstart svnserve,停止服務命令:net start svnserve,也可以進入Windows提供的界面操作SVNService服務了,即控制面板—>服務。
(5)如果路徑中包括空格,一定要用「\」處理「"」號,例如上面的例子中如果svnserve.exe在「c:\programfiles\svn\」中,則命令應該寫為「binpath="\"c:\programfiles\svn\bin\svnserve.exe\"
五、配置用戶和許可權
(1)修改svnserve.conf,在e:\svn\repos1\conf目錄下,用文本編輯器打開svnserve.conf:
將:
# anon-access = read
# auth-access = write
# password-db = passwd
改為
anon-access = read
auth-access = write
password-db = passwd
注意說明:
anon-access等列前面是沒有空格的。
anon-access = read表示沒通過用戶名密碼登錄的訪問只有讀的許可權,如果改為none則沒有用戶名密碼不能訪問
auth-access = write表示通過用戶名密碼登錄的有寫的許可權(當然讀的許可權也就有了)
password-db = passwd表示可以通過 用戶名 = 密碼 的方式在passwd文件中添加用戶
(2)修改同目錄的passwd文件,增加用戶帳號:
將:
[users]
# harry = harryssecret
# sally = sallyssecret
添加帳號:
[users]
# harry = harryssecret
# sally = sallyssecret
admin = admin
添加一個admin賬戶,密碼是admin。
六、初始化SVN,導入數據
選中要上傳SVN的文件夾,「右鍵 ->TortoiseSVN -> Import...」 ,在彈出對話框的「URL of repository」輸入「svn://localhost/project1/」。在「Importmessage」輸入注釋,點擊OK,要求輸入帳號,輸入賬戶admin和密碼admin。
七,測試SVN
本地測試:新建一空文件夾test1,單擊右鍵,選擇「SVN Checkout」,在「URL of repository」中輸入「svn://localhost/project1」。
其他機器測試:如果運行svnserve的主機IP地址是1.2.3.4,則URL輸入的內容就是「svn://1.2.3.4/project1」。
Ⅷ 如何設置 SVN
(一)安裝
Windows環境下面分了CollabNet / Tigris.org(Apache2.2和Apache2.0) / SlikSVN / VisualSVN 5個鏈接,我選的是Tigris Apache2.2,下載一個目前最新的Setup-Subversion-1.6.6.msi,點擊,一路安裝即可,很簡單。
開始菜單-》運行-》輸入Cmd回車,敲「svn --version --quiet」,會得到SVN的版本號。
(二)配置
1、創建repository
Rrepository是存儲數據的地方。
例如要在F:\svnroot下創建repository,就使用命令行svnadmin create f:\svnroot。如果執行正確的話,會在F盤下多一個SVNROOT的目錄,目錄下有4個目錄和2個文件。
2、啟動SVN服務
使用命令行 svnserve -d -r f:/svnroot,這樣外部就可以它能夠過客戶端來訪問了。
我運行完才發現,這樣cmd窗口還不得不一直開著,很難看,當然一般大公司的代碼伺服器是24小時開著的。
上網搜了一下,也可以作為一個服務自動啟動的。執行腳本 sc create svn binpath= "\"d:\Program Files\Subversion\bin\svnserve.exe\" --service -r\"f:/svnroot\"" displayname= "Subversion Server" depend= Tcpip start= auto 就可以將svnserve程序作為服務載入。安裝路徑和存儲數據的目錄要根據自己的情況修改。
執行完這個腳本,可以去管理工具-》控制面板-》服務那裡找找Subversion Server,如果沒啟動就啟動
3、基本設置
修改f:|svnroot\repos\conf\svnserve.conf,注釋很詳細。
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository
[sasl]
# use-sasl = true
# min-encryption = 0
# max-encryption = 256
期中,anon-access = none表示要用戶名和密碼,password-db = passwd表示passwd是存身份驗證的用戶名和密碼。sasl,就是加密訪問用的,一般也可以不用。
4、用戶管理
在f:|svnroot\repos\conf\passwd里添加有許可權的用戶名和密碼。例如添加用戶yobin,密碼123456,就這樣:
[users]
# harry = harryssecret
yobin = 123456
hh = 111
ss = 222
5、分組管理和許可權設置
如果是所有文件對用戶都可見的話,上面幾步也足夠用了。但要想對一些人可見,一些人不可見的話,就要去修改authz文件了。
&別名:別名的引用
@用戶組名:某組用戶
$authenticated:所有已授權用戶
$anonymous:匿名用戶
* : 任何人
r:寫許可權
rw:讀寫許可權
:不能訪問(空,什麼都不寫)
設置用戶許可權的時候,'='左側代表用戶名稱,可以是實際用戶名,也可以是定義的用戶組名,也可以是別名,但要用'@'作為前綴,或者是所有用戶'*'。'='右側代表設置的許可權'r'、'rw'或者為空即代表用戶對於該目錄無任何許可權。
authz文件中對版本庫路徑的表示方法。用'[/]'來表示版本庫的根目錄,如果有子目錄foo,設置該目錄許可權時用'[/foo]'即可,其他任何目錄都以'/'為版本根目錄進行表示。注意了,別用」\「!!!
用戶某個目錄的許可權是向子目錄遞歸的。如果用戶對於/foo目錄有讀寫許可權,則該用戶對於foo目錄下的所有子目錄都有讀寫許可權。如果不設置最上層的目錄沒有設置許可權,那麼就相當於不設置,禁止訪問。
許可權分配,只可以分配到某個目錄,而不能到某個文件。
Ⅸ svn創建庫的問題
SVN安裝好了,但是想創建版本庫,出現問題了是嗎?
請問SVN服務安裝好之後,
環境變數
中有SVN的設置嗎?
要是設置好了,就使用命令直接創建庫吧:如下,創建Project1庫
svnadmin
create
--fs-type
fsfs
Project1
Ⅹ SVN如何創建各個管理庫,如文檔庫,代碼庫等
您好,SVN是C/S架構,數據存放分成伺服器端和客戶端。創建代碼庫一般指的是SVN伺服器端的操作,這個庫隨便建在什麼地方都可以;你要發布的線上代碼,這是存放在SVN的客戶端的。
SVN的伺服器端和客戶端存放文件的格式是不同的,所以不能直接訪問SVN伺服器端的存儲路徑,只能通過SVN客戶端將伺服器端的存儲內容checkout或者export出來。
理解上述這些基礎知識後,你應該就明白了,你要做的事情就是:
1、先建立一個SVN伺服器(可以專門安裝SVN伺服器端安裝包,建立用http/https或svn協議訪問的SVN伺服器;也可以簡單用TortoiseSVN創建本地的用files:///方式訪問的SVN伺服器);
2、在伺服器端建立一個空的版本庫,將你原有的www-web-項目 文件夾 上傳到SVN伺服器新建的版本庫中;
3、在你線上存放代碼的地方新建一個文件夾,並將版本庫中的內容checkout到這個新文件夾,設置這個文件夾是以後線上發布代碼的文件夾。
4、在你開發用的工作電腦上checkout一個文件夾出來,平時在這個文件夾修改代碼,修改完成後上傳到SVN伺服器,然後在線上代碼對應的文件夾那裡更新得到上傳的新代碼。
這樣的話,你的整個工作就分成了3個存儲位置:1、伺服器端,2、開發端,3、線上發布端,這就井井有條、互不幹擾了。
當然,SVN要用的好,還有很多技巧,比如分支/標記的使用,比如鉤子的使用(可以實現實時自動發布,每次從開發端提交後就自動更新線上發布端),那需要你繼續學習了。