2015-02-05 2 views
1

각 개발중인 여러 플러그인을 사용하는 여러 WordPress 웹 사이트를 개발 중입니다. 어떤 웹 사이트에서든 플러그인을 업데이트하고 다른 웹 사이트에 업데이트를 표시하고 싶습니다. 또한 Tortoise SVN을 클라이언트로 사용하고 있습니다.기존 폴더를 저장소의 여러 위치로 공유

여러 웹 사이트에서 사용되는 기존 플러그인의 폴더 사본을 보관하는 가장 좋은 방법은 무엇입니까?

+0

가능한 복제본 [SVN에 파일이있는 기존 폴더를 추가하는 방법] (http://stackoverflow.com/questions/15510119/how-to-add-an-existing-folder-with-files-to- svn) – Ben

+0

질문을 다시 풀어 보겠습니다. 프로젝트 A와 B는 각각 폴더 F 사본을 포함합니다. A -> F의 내용을 업데이트하면 B를 업데이트 할 때 B -> F에 나타나야합니다. 이 결과를 얻으려면 A.F 및 B.F를 어떻게 구성합니까? –

답변

0

svn:externals을 사용하면됩니다.

두 개의 프로젝트 A와 B가 귀하의 질문에 대한 귀하의 의견에 따라 가정, 공유 플러그인 F.

장소 A와 B 모두에서 저장소 별도의 내 자신의 폴더에 공유 플러그인 F를 들어 예를 들어, {repository root}/Plugins/F/trunk으로 갈 수 있습니다.

A와 B의 일부 폴더에서 F 포인터를 포함하는 svn:externals이라는 특수 속성을 만들고 프로젝트의 작업 복사본 안에 F를 배치 할 위치를 만들 수 있습니다.

^/Plugins/F/[email protected] F 

체크 아웃 또는 프로젝트 A에 대한 작업 사본을 업데이트 할 때, SVN이 자동으로의 새로운 작업 복사본을 생성합니다 : 예를 들어, 다음과 같이 당신은 A/트렁크/플러그인 폴더에 svn:externals 정의를 가질 수있다 A/trunk/plugins에있는 플러그인 F입니다. 위의 내에서 @123을 사용합니다. 즉, 플러그인 F의 새로운 작업 카피가 리비전 123에서 가져옵니다. 은이 리비전 지정자 [1]을 생략 할 수 있지만 이 아니어야합니다. 개정 지정자를 사용하지 않으면 F를 변경 한 후에 각 프로젝트마다 svn update을 간단히 수행 할 수 있으며 변경 사항이 즉시 표시됩니다. 그러나 이전 버전의 프로젝트로 업데이트하는 경우에도 플러그인의 최신 버전을 항상 가져 오기 때문에 이전 버전의 프로젝트를 다시 작성하는 것은 매우 어렵습니다. 또한 플러그인과 호환되지 않는 변경을 수행하면 업데이트 할 때 다른 모든 프로젝트가 중단됩니다. 개정 지정자를 입력하면 최신 버전의 플러그인을 가져올 좋은 시점을 의식적으로 결정할 수 있습니다.

[1] 이는 기술적으로 "못 수정"이라고하며 개정 지정자는 약간 다르지만 일반적으로 svn : externals 정의에서이 세부 정보를 신경 쓸 필요가 없습니다.

관련 문제