2009-06-27 10 views
17

나는 svn에서 웹 사이트를 운영하고 있으며 현재 저장소에있는 내용으로 라이브 웹 사이트를 패치하려고합니다 (예 : 라이브 웹 사이트에서 svn 업데이트를 효과적으로 호출 함).하지만 원하지 않습니다. 프로덕션 웹 사이트의 모든 폴더에있는 .svn 디렉터리.svn 디렉토리가없는 svn 체크 아웃 및 업데이트

버전 정보가있는 .svn 폴더가 버전 제어하에있는 파일과 같은 디렉토리에 없도록 svn을 설정하는 방법이 있습니까?

git에서 작업 트리를 만들고 디텍 치하고 이런 식으로 프로젝트에 업데이트를 푸시 (http://toroid.org/ams/git-website-howto에 따라)하면 기본적으로 svn에서 비슷한 작업을 수행 할 수 있기를 원합니다.

+0

, 팁을위한 감사 때문에. 추신 svn은 진화론적인 단계였습니다. 지금은 역사적인 관심사입니다. 다시 한 번 감사드립니다! –

답변

37

svn exportcheckout과 비슷하지만 .svn 디렉토리가 없습니다. 그러나, 당신은 update 그런 구조 때문에 svn 작업 복사본이 아니야 수 없습니다.

.svn 디렉토리에 대한 액세스를 허용하지 않으려면 웹 서버를 구성하고 checkout + update 메소드로 이동하면됩니다. 반복적으로 사용하는 경우 laalto가 svn export 언급 한 바와 같이

+1

두 번째 옵션을 수행하는 방법에 대한 정보는이 질문을 참조하십시오. http://stackoverflow.com/questions/214886/how-do-i-hide-directories-in-apache-specifically-source-control –

7

".svn"디렉토리를 복사하지 않도록 rsync를 구성하는 방법은 어떻습니까?

rsync --exclude=.svn local_svn_copy webserver:site/

이 할 수있는 웹 서버의 사본을 새로 고치 다시 실행합니다.

1

는 "작업 복사본"을 업데이트하기위한 매우 효율적인 간단하지만 방법에 대한 수 있습니다 : 당신은 또한 웹 사이트의 자식 거울을 만들 git-svn를 사용할 수

[email protected]:~$ svn export --non-interactive --force "<URL>" <directory> 
1

및 그런 다음 링크 된 기사에 설명 된 방법을 게시하십시오. 분명히 이것은 직선적 인 해결책이 아닙니다.

2

을 httpd.conf :

내가 자식 추적 웹 사이트에 대한 rsync를 생각하고 있었는데 현실에서
<Directory ~ "\.svn"> 
    Order allow,deny 
    Deny from all 
</Directory> 
관련 문제