다음 Linux Tutorial 칼럼에서는 Linux 서버에서 svn 환경을 구축하는 방법을 소개하겠습니다. 필요한 친구들에게 도움이 되길 바랍니다!
1. svn 서버를 설치합니다
sudo apt-get install subversion
sudo apt-get install subversion
2、安装svn在ubuntu的本地客户端
sudo apt-get install libapache2-svn
3、在根目录home下面建一个文件夹svn,作为svn的根目录
sudo mkdir /home/svn
4、建一个ubuntu的用户组,和一个管理员
sudo adduser svnuser(这里随便取个用户名) sudo addgroup svngroup(这里是用户组) sudo addgroup svnuser svngroup(把用户添加到用户组)
5、接着在svn的根目录下面创建一个svn的资源库,随便取名,例如pro
sudo mkdir /home/svn/pro
6、把上面创建的用户组的权限给到资源库pro
sudo chown -R root:svngroup /home/svn/pro sudo chmod -R g+rws /home/svn/pro
7、向资源库里导入资源
sudo svnadmin create /home/svn/pro
8、进入资源库/home/svn/pro
,可以看到有几个文件夹,打开conf文件夹
svnserve.conf是svn的配置文件 passwd是svn的用户文件 authz是svn的权限文件
9、先打开svnserve.conf
,将这些内容前面的#去掉,并查看后面的内容符合与否
sudo gedit /home/svn/pro/conf/svnserve.conf ----------------- [general] anon-access = read(这个是匿名访问权限,只读) auth-access = write(这个是有权限操作,可写) password-db = passwd(这个是用户文件的名称,对应8的passwd) auth-db = authz(这个是用户权限文件的名称,对应8的authz) realm = my project(这个是访问的时候显示的别名,随便取名也可)
10、打开passwd
文件添加一个svn
用户,在[users]
下面添加admin=123456
sudo gedit /home/svn/pro/conf/passwd admin是用户名 123456是密码
11、打开authz
文件,给刚才的用户添加访问权限
sudo gedit /home/svn/pro/conf/authz [groups] root = admin(定义一个权限组root,把admin用户加入权限组root) [/] @root=rw(给root里的所有用户,读写的权限) * = r(给所有其他的匿名用户,只读的权限)
12、重启svn
sudo killall svnserve sudo svnserve -d -r /home/svn
13、查看下本机ubuntu的ip地址
sudo ifconfig
可以看到192.168.***.***
14、然后在我们的window主机里可以局域网访问虚拟机的svn了,相信大家都有TortoiseSVN
这个工具吧,在地址栏写上svn://192.168.***.***/pro
即可,用户为上面建立的admin=123456
,上传几个测试文件,比如index.php,写点php代码上传上去;
15、这个时候php是无法解析到我们的svn里的资源index.php的,所以要把svn资源库里的文
件给同步到ubuntu的apache+php访问目录里去,在/var/www/html下面建一个文件夹
sudo mkdir /var/www/html/bbs sudo chmod -R 777 /var/www/html/bbs sudo svn co svn://192.168.***.***/pro /var/www/html/bbs
16、然后我们可以在window主机上访问http://192.168.***.***/bbs
看到index.php的内容了,接着我们要让apache自动同步svn的资源库变化后的内容,才能达到我们的效果;
在/home/svn/pro/hooks
目录下有很多以tmpl结尾的文件,找到post-commit.tmpl
,使用命令
cd /home/svn/pro/hooks sudo cp post-commit.tmpl post-commit sudo chmod +x post-commit sudo gedit post-commit
打开文件后,看到最后几行没有加#的,给它们全部加上#,因为这个是发邮件的例子,我们用不到,全部注销掉,然后在最后一行加上这段代码
svn up /var/www/html/bbs --username=admin --password=123456
这样只要我们在window上传文件到svn的资源库,apache就会自动把这些文件同步到我们的bbs文件夹下,然后就可以在地址栏访问到我们的项目了,搞定。另外,极个别,如果中文显示有问题的话,那么可以在svn up
这个代码前面加上export.UTF8
2. ubuntusudo apt-get install libapache2- svn
에 svn 로컬 클라이언트를 설치합니다. code>
sudo mkdir /home/svn
🎜🎜4의 루트 디렉터리로 svn 폴더를 만들고 관리자를 만듭니다🎜 rrreee🎜5. 그런 다음 svn의 루트 디렉터리 아래에 svn 리소스 라이브러리를 만들고 pro🎜🎜sudo mkdir /home/svn/pro
🎜🎜6과 같이 원하는 이름을 지정하고 권한을 부여합니다. 위에서 생성한 사용자 그룹을 리소스 라이브러리 pro🎜rrreee🎜7로 가져옵니다. 리소스를 리소스 라이브러리🎜🎜sudo svnadmin create /home/svn/pro
🎜🎜8로 입력합니다. >/home/svn/pro 여러 폴더가 보이는데, conf 폴더🎜rrreee🎜9를 열어보세요. 먼저 svnserve.conf
를 열고 #Remove 앞의 내용을 변경하고 다음 내용이 일치하는지 확인하세요🎜rrreee🎜🎜10. 🎜passwd
🎜 파일을 열고 🎜svn🎜User, 🎜[ 사용자 ]
🎜아래를 추가하세요🎜admin=123456
🎜rrreee🎜11 authz
를 엽니다. 파일, 지금 바로 사용자에게 액세스 권한을 추가하세요🎜rrreee🎜🎜12. svn🎜🎜rrreee🎜13을 다시 시작하세요. 로컬 우분투의 IP 주소를 확인하세요🎜🎜sudo ifconfig
🎜🎜를 보실 수 있습니다. >192.168.***.***
🎜🎜14. 그런 다음 창 호스트에서 LAN을 통해 가상 머신의 svn에 액세스할 수 있습니다. 14px; line -height: 1.76em;">TortoiseSVN🎜이 도구는 주소에 🎜svn://192.168을 입력합니다. bar.***.***/pro
🎜바로 그 사용자입니다. 위에서 생성한 사용자입니다🎜admin=123456
🎜, index.php와 같은 몇 가지 테스트 파일을 업로드하고 일부 PHP 코드를 작성하여 업로드하세요. 🎜🎜🎜15 현재 PHP는 svn에서 리소스 index.php를 구문 분석할 수 없으므로 필요합니다. svn 리소스 라이브러리에 추가하려면 🎜🎜 파일이 우분투의 apache+php 액세스 디렉터리에 동기화되고 /var/www/html 아래에 🎜rrreee🎜16 폴더가 생성됩니다. 그러면 http:/에 액세스할 수 있습니다. / 창 호스트 192.168.***.***/bbs
index.php의 내용을 확인하세요.🎜그런 다음 효과를 달성하려면 svn 리소스 라이브러리의 변경된 내용을 자동으로 동기화하는 아파치가 필요합니다.🎜 🎜🎜 🎜/home/svn/pro/hooks
디렉터리에는 tmpl로 끝나는 파일이 많이 있습니다. post-commit.tmpl
을 찾아 🎜🎜rrreee🎜 명령을 사용하세요. 파일을 열려면 #이 없는 마지막 몇 줄이 보이면 모두 #을 추가하세요. 이는 이메일 보내기의 예이므로 🎜 필요하지 않으므로 모두 로그아웃한 다음 다음을 추가하세요. 코드를 마지막 줄에 🎜🎜rrreee🎜 이렇게 합니다. 창의 svn 리소스 라이브러리에 파일을 업로드하면 Apache는 자동으로 이 파일을 🎜bbs 폴더에 동기화한 다음 주소 표시줄에서 프로젝트에 액세스할 수 있습니다. . 또한, 드문 경우지만 중국어 🎜🎜 디스플레이에 문제가 있는 경우 svn up
코드 앞에 export.UTF8
을 추가하고 다시 시도할 수 있습니다 🎜 🎜. 🎜🎜위 내용은 Linux 서버에서 svn 환경을 구축하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!