1 頁 (共 1 頁)

ubuntu 20.04 安裝 svn in docker

發表於 : 2020年 12月 3日, 00:57
leeyc
# docker exec -it apache /bin/bash

yum install mod_dav_svn subversion -y

# mkdir /var/www/svn

vi /etc/httpd/conf.d/subversion.conf

<Location /svn>
    DAV svn
    SVNParentPath /var/www/svn
    AuthType Basic
    AuthName "Subversion repositories"
    AuthUserFile /etc/svn-auth-users
    Require valid-user
</Location>

docker logs --tail 50 --follow --timestamps apache

## 把 Docker 容器內的檔案複製出來
docker cp apache:/etc/httpd/conf.d/subversion.conf /web/www

docker cp /web/www/subversion.conf apache:/etc/httpd/conf.d/
docker cp /web/www/ssl.conf apache:/etc/httpd/conf.d/

# htpasswd -cm /etc/svn-auth-users leeyichung
New password:
Re-type new password:
Adding password for user leeyichung


# cd /var/www/svn

# svnadmin create centerhr
# chown -R apache.apache centerhr
# svnadmin create goinghr
# chown -R apache.apache goinghr

#CentOS / RHEL#
/etc/init.d/httpd restart
#OR#
service httpd restart

http://192.168.31.24/svn/centerhr
https://leeyc.ddns.net/svn/centerhr


## 安裝 SVN 服務
# apt install subversion

## import hr.central-security.com.tw
svn import centerhr/ https://192.168.1.88/svn/centerhr -m "Initial repository layout for centerhr"
svn import goinghr/ https://60.249.243.159/svn/goinghr -m "Initial repository layout for goinghr"
svn import Endia/ https://pm.endiamond.com/svn/Endia -m "Initial repository layout for Endia"
## Checking Out
svn co https://hr.central-security.com.tw/svn/centerhr
svn co https://pm.endiamond.com/svn/Endia
svn co https://pm.endiamond.com/svn/Enks
svn co https://60.249.243.159/svn/goinghr

svn co https://endia.ddns.net/svn/Endia
svn co https://endia.ddns.net/svn/Enks

## Update 
svn up
## Commit
svn commit -m "Added a line to testconf1.cfg."
svn ci
## 刪除檔案或目錄
svn delete test.php 
svn ci -m "delete test file"

## ubuntu 20.04 解決SVN衝突 三步驟
svn resolve
svn cleanup
svn update

## 增加忽略檔案
leeyc@e:/web/ww1/Endia$ svn propedit svn:ignore .

cd /www
svn co https://leeyc.ddns.net/svn/goinghr

cd /web/ww1/Endia
svn relocate https://pm.endiamond.com/svn/Endia

cd /web/ww1/Enks
svn relocate https://pm.endiamond.com/svn/Enks

若是 relocate UUID衝突 最快的方法是 刪除 .svn 目錄後,重新checkout

查詢並刪除目錄下所有的.svn檔案(包括子目錄)
cd /www/goinghr
# find . -type d -name  '.svn' | xargs rm -rf
# find . -type d -name  '.svn'

ubuntu 20.04 install svn ======================================
apt install subversion libapache2-mod-svn subversion-tools libsvn-dev
sudo a2enmod dav
sudo a2enmod dav_svn
sudo service apache2 restart

sudo nano /etc/apache2/mods-enabled/dav_svn.conf

<Location /svn>
    DAV svn
    SVNParentPath /var/www/svn
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile /etc/apache2/dav_svn.passwd
    <LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
    </LimitExcept>
</Location>

sudo mkdir /var/www/svn
sudo svnadmin create /var/www/svn/Endia
sudo svnadmin create /var/www/svn/Enks

sudo chown -R www-data:www-data /var/www/svn
sudo chmod -R 775 /var/www/svn

sudo htpasswd -cm /etc/apache2/dav_svn.passwd leeyichung

sudo service apache2 restart