조회 수 1790 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

One svnserve, multiple repositories

2007-01-17 •  • 16 Comments

A note on how a single svnserve can serve multiple repositories.

Yellow Dog

Let’s suppose the Yellow Dog project uses Subversion. You’ve set up a Subversion server (let’s give it a hostname svnserver), created a user svn, and a repository /home/svn/repository. Here’s the command you use to start the server:

$ svnserve -d -r /home/svn/repository

Red Bear, Blue Goat

Sometime later, the Red Bear project also decides to use Subversion. This project is unrelated to the Yellow Dog project and therefore needs its own repository. Similarly, we want a Blue Goat repository for yet another unrelated project.

What to do

Here’s what to do.

Creating the new repositories
$ ssh svn@svnserver
$ mkdir repositories
$ cd repositories
$ svnadmin create red_bear
$ svnadmin create blue_goat

Now we should have a directory layout like the following.

The view from /home/svn
+---repositories
|   +---blue_goat
|   |   +---conf
|   |   +---dav
|   |   +---db
|   |   +---hooks
|   |   \---locks
|   \---red_bear
|       +---conf
|       +---dav
|       +---db
|       +---hooks
|       \---locks
\---repository
   
+---conf
   
+---dav
   
+---db
   
+---hooks
   
\---locks

All we need to do is move the (poorly named) original Yellow Dog repository alongside the newer ones. I’d recommend taking down svnserve first, and of course notifying everyone working on the Yellow Dog project — but the move really will only take a few seconds.

Moving the old repository and restarting the server
$ killall svnserve
$ mv repository repositories
/yellow_dog
$ svnserve
-d -r /home/svn/repositories

Inetd mode

If you’re using svnserve in inetd mode, most of the above applies directly — you simply adjust thesvnserve configuration file in the obvious way to reflect the new repository root.

Repository URLs

The new repository URLs are:

  • svn://svnserver/yellow_dog
  • svn://svnserver/blue_goat
  • svn://svnserver/red_bear

Note that the old URL for the Yellow Dog project was svn://svnserver. This means that anyone with a Yellow Dog working copy will have to svn switch it.

$ svn switch --relocate svn://svnserver svn://svnserver/yellow_dog

Loose Ends

There may be a few scripts kicking around which need to be changed to reflect the new layout:

Nothing should be hard, but with a very little forwarded planning you’ll see no loss of service. Once you’ve adjusted (if necessary) your backup script, I’d suggest now would be a good time to rehearse the recover-from-backup procedure.


[출처] http://wordaligned.org/articles/one-svnserve-multiple-repositories

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
1029 Develop [ios] Facebook Cache 갱신하는 함수 file hooni 2017.02.27 1318
1028 Develop [ios] Facebook SDK 로그인 설명 file hooni 2017.04.19 1319
1027 System/OS Enable the Develop Menu in Safari file hooni 2017.02.07 1328
1026 Develop [ios] UIWebView를 이용한 로컬 HTML 파일 표시 file hooni 2015.01.02 1335
1025 Develop 사이버보안실무 발표자료 (2017.06.08) file hooni 2017.06.05 1341
1024 Develop [js] 문자열에서 숫자만 걸러내기 (jQuery 안쓰고 정규표현식) hooni 2017.12.14 1350
1023 Develop [ios] APNS, Remote Push 사용자가 수신을 동의했는지 확인하기 hooni 2018.10.19 1363
1022 Database [mysql] ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. hooni 2017.12.15 1371
1021 Etc 영어. 반드시 외워야 할 문장 패턴 100개 file hooni 2023.06.08 1372
1020 PPT [ppt] Macro for board game 발표자료 (@Team Study 2013.01.18) 1 file hooni 2015.07.22 1374
1019 Develop [ios] 동영상 플레이어 샘플 (for PIP Player) file hooni 2017.03.15 1394
1018 System/OS [linux] iptables 초간단 세팅 스크립트 hooni 2017.09.26 1397
1017 Develop [vim] vim 명령으로  문자 제거하기 (remove 65279 bomb) hooni 2021.02.03 1403
1016 Develop [android] How can I place app icon on launcher home screen? hooni 2016.11.15 1404
1015 System/OS [linux] yum 업데이트 시 커널 제외하기 hooni 2014.09.11 1407
1014 Develop [ios] GPS 이용 상태 확인 hooni 2015.04.27 1414
Board Pagination Prev 1 ... 8 9 10 11 12 ... 74 Next
/ 74