2011-08-08 7 views
3

모바일 앱의 iOS 및 Android 버전에 각각 하나씩 두 개의 svn 리포지토리가 있습니다. 두 버전의 앱은 동일한 SQLite 데이터베이스를 공유합니다. 현재 각 repo에는 자체 데이터베이스 복사본이 있습니다. 이는 변경 사항을 두 번 적용해야한다는 것을 의미합니다.상위 디렉토리의 루트에 svn : externals를 체크 아웃 할 수 있습니까?

대신 데이터베이스가 포함 된 세 번째 repo를 추가하고 svn:externals을 사용하여 지정된 버전의 앱에 대한 체크 아웃시 작업 폴더로 복사본을 가져오고 싶습니다. externals를 설정할 수 있었지만 체크 아웃 할 때 작업 디렉토리에 하위 폴더를 만들고 외부 파일을 저장합니다. 하위 폴더를 만들지 않고 외부 파일을 끌어 내려야합니다.

외관 정의에서 로컬 경로로 ../을 사용하려고 시도했지만 성공하지 못했습니다.

이것이 가능합니까 아니면 다른 접근 방법을 찾아야합니까?

편집 - Manojlds의 훌륭한 답변 덕분에 자체 별도의 저장소에있는 데이터베이스로이 작업을 수행 할 수있었습니다. TortoiseSVN을 문서 구체적으로 명시 때문에 나는 아직도 조금 혼란 스러워요 그 :

외부 파일에 삽입 될 URL 와 같은 저장소에 있어야 외부에있는 파일의 URL; 저장소 간 파일 외부는 지원되지 않습니다.

내가 언급하고있는 문서는 here.이라고 할 수 있습니다.이 질문을 건너 오면 나는 혼란 스럽습니다.

답변

1

당신은 할 수 있어야한다 :

svn propset svn:externals "^/path/sqlite.db sqlite.db" . 

(전체 경로가 다른 REPO 경우 위 - 당신이 비록 다른 REPO 필요합니까 이유와 함께, 같은 REPO 내에서 다른 폴더가 될 수 있습니다 iPhone과 Android 앱은 동일한 저장소 내의 별도 프로젝트 임).

+0

당신이 말했듯이, 나는 두 개의 응용 프로그램 버전을 하나의 저장소로 분리 된 프로젝트로 옮길 것을 고려하고있었습니다. 데이터베이스를 자체 폴더에 추가하는 것뿐만 아니라 외부 파일을 사용하여 모바일 앱의 각 버전으로 가져올 수 있습니까? –

+0

@Joshua Smith 잘 모르겠지만 위와 같은 명령을 사용하면 상대 경로가'^'로 표시됩니다. – manojlds

+0

가짜 폴더 구조를 설정하여이 작업을 수행 할 수있었습니다 당신이 설명했듯이. 어쨌든 두 가지 모바일 앱을 어느 때보 다 공통 저장소로 옮겨야했습니다. 의견을 보내 주셔서 감사합니다. –

1

TortoiseSVN은 문서가 말하는 내용을 시행하고 외부는 할 수 없으므로 수정 사항이 적용되지 않습니다. 다른 repo에있는 파일. 이 문제를 해결할 방법이 없지만 당신이 그것을했다고 주장하고 있습니다. 3 개의 프로젝트를 동일한 저장소에 두지 않았습니까?

그리고 이것은 SVN 문서에서 똑같이 말하는 TortoiseSVN 문제가 아닙니다. http://svnbook.red-bean.com/en/1.7/svn.advanced.externals.html

내가 충분히 평판을 얻었다면이 말을 한 것입니다.

+0

내가 게시 한 후 몇 년 동안 누군가 의견을 냈다. 내가 정확히 무엇을했는지 알 수 있었으면 좋겠지 만 Git을 발견했을 때 Subversion을 뜨거운 바위처럼 떨어 뜨 렸습니다. 게다가, 나는 그 때 일하고 있던 회사를 떠난 지 오래다. –

관련 문제