VisualSVN의 resository의 저장공간 경로가 1개이면, 아래의 문제에 직면한다면... 참 난감합니다.

아래는 용량이 부족한 상황으로 새로운 저장공간을 확보하여도, 추가할 수 없는 상황입니다.

  1. 기존 용량의 repository에 용량이 부족하여, 새로운 디스크를 기존의 repository 에 추가할 때

  2. 용량이 부족하여, A repository의 자료를 B repository로 최근 자료의 일부를 백업 할때

 

VisualSVN의 repository 저장 경로는 아래와 같이 단일 경로 입니다.

 

그래서 방법이 없나 고민하다가 찾아냈습니다!!!

알아낸 방법을 사용 할 경우가 있을지는 모르겠으나, 엔지니어로써 찾아내서 기쁘네요ㅎㅎㅎ

 

 

[간단 정리]

1. repository의 저장 경로를 새롭게 추가할 디스크가 있는 경로로 변경한다.

2. 새로운 repository를 생성한다.

3. 기존 repository 경로로 다시 설정을 변경한다.

※ 이렇게 번거롭게 하는 이유는 repository의 폴더 권한 때문입니다.

4. 기존 repository 경로에 아래 명령어를 이용하여 심볼릭 링크를 만든다.

  - 명령어: mklink /d "링크" "원본"

5. VisualSVN의 httpd.conf 파일을 open 한다.

  - 경로: C:\Program Files\VisualSVN Server\conf

6. <Location "/svn/">을 검색으로 찾아서 <location "/svn/"> </Location> 복사하여 바로 아래에 붙여 넣는다.

7. 붙여넣은 <Location "/svn/">과 SVNParentPath C:\Repositories"를 변경한다.

  - <Location "/svn2/">, SVNParentPath C:\test_Reposiroty"

8. repository svn_path_test의 경로에 접근권한을 부여한다.

9. VisulSVN의 서비스를 재시작한다.

10. 테스트

 

 

[상세 설명]

1. repository의 저장 경로를 새롭게 추가할 디스크가 있는 경로로 변경한다.

  - 저는 새로운 디스크가 아닌 별도의 공간을 추가하는 방법으로 테스트를 진행했습니다.

 

2. 새로운 repository를 생성한다.

  - 저는 svn_path_test 라는 repository를 생성했습니다.

 

- svn_path_test의 repository 권한은 아무 것도 주지 않았습니다.

  (기존 생성한 기본 계정 정보는 storage의 경로를 C:\Repositories로 설정해야 불러 올 수 있습니다.)

 

※ svn_path_test 폴더 권한:

  - 아래의 권한은 svn 설정의 storage 경로 설정 후 repository 생성시에만 부여 됩니다.

 

3. 기존 repository 경로로 다시 설정을 변경한다.

 

4. 기존 repository 경로에 아래 명령어를 이용하여 심볼릭 링크를 만든다.

  - 명령어: mklink /d "링크" "원본"

 

5. VisualSVN의 httpd.conf 파일을 open 한다.

  - 경로: C:\Program Files\VisualSVN Server\conf

 

6. <Location "/svn/">을 검색으로 찾아서 <location "/svn/"> </Location> 부분을 복사하여 바로 아래에 붙여 넣는다.

 

7. 붙여넣은 <Location "/svn/">과 SVNParentPath C:\Repositories"를 변경한다.

  - <Location "/svn2/">, SVNParentPath C:\test_Reposiroty"

 

8. repository svn_path_test의 경로에 접근권한을 부여한다.

 

9. VisulSVN의 서비스를 재시작한다.

 

10. 테스트

  - 내 PC에서 svn 폴더와 동기화 할 폴더를 생성 (d:\svn_path_test 테스트 진행)

  - SVN Checkout...을 이용하여 계정 설정 및 폴더 동기화 진행

  - 폴더 및 계정 정보 확인 후 후 OK 선택

  - 저는 기존 ksm 계정을 계속 사용하여 계정 로그인 정보가 나오지 않았습니다.

  - 정상적으로 완료가 되면 아래와 같이 형상관리 버전이 0 으로 확인할 수 있습니다.

  - 실제 svn_path_test repository 경로와 심볼릭 링크로 설정된 svn_path_test 경로의 형상관리 버전 시간 비교입니다.

  - 경로는 다르지만, 형상관리버전 파일의 시간이 정확히 일치하는 것을 볼 수 있습니다.

 

위의 방법으로 SVN에 추가 저장 공간을 확보하여 저장 공간을 늘리거나, 새로운 백업 시 유용하게 사용하시기를 바랍니다.

'기술 노트 > SVN' 카테고리의 다른 글

원하는 형상버전으로 분리 하기  (0) 2023.07.14
SVN에서 lock이 걸린 경우  (0) 2023.07.05
svn 서버 ip 변경하기  (0) 2023.06.21
svn 폴더 동기화 하기  (0) 2023.06.21
SVN 연결 폴더 초기화 하기  (0) 2023.06.21

+ Recent posts