2008-10-03 4 views
2

메모를 기록한 개인 위키가 있습니다. 위키의 페이지는 Subversion 작업 카피 디렉토리 "pages"에 있으며, 나는 www-data : www-data가 소유 한 권한을 664로 설정합니다. 내 사용자 이름은 "www-data"그룹에 있으므로 수동으로 체크인하고 혼란스럽게 할 수 있습니다.왜 Subversion은 체크인시 파일을 다시 만들거나 다시 만드나요?

잠시 동안 체크인을 실행할 때마다 파일이 www-data : www-data 대신 www-data가 소유되어서 더 이상 변경할 수 없으므로 문제가 발생했습니다. 내 웹 인터페이스를 통해 위키 파일! 나는 "페이지"디렉토리에있는 setgid 비트를 뒤집어서이 문제를 해결했지만, 왜 이것이 처음에 이런 일이 일어 났는지에 관해 혼란 스럽다.

언제든지 Subversion으로 무엇인가를 확인할 때마다 svn이 삭제하는 것처럼 보인다. 그것을 재창조합니다. 왜? 이 동작은 내가 모르는 일부 기능을 지원합니까? 그것을 바꿀 수있는 방법이 있습니까?

감사합니다.

답변

3

"끈적"권한 비트를 설정하십시오.

이렇게하면 마지막으로 편집 한 사람으로 전환하는 대신 디렉토리 사용 권한을 상속하는 체크 아웃의 파일 생성 단계가 권장됩니다.

: dow + s == setgid. 후손과 다른 독자들을 위해 남겨진 정보.

2

내가 잘못 사용했다고 생각합니다. 당신이 할 수있는 일은 아직도 전복에서 모든 것을 가지고 있고, 당신이 개발 한 www 디렉토리와는 별도로 현지 작업 사본을 가지고 있어야합니다.

그런 다음 www- 사용자에 대해 www- 작업 사본을 자동 업데이트 (또는 www foldeR에서 .svn 디렉토리를 원하지 않으면 내 보낸 경우) 한 스크립트 (아마도 post-commit 후크)로 가져온 다음 그에 따라 설정 권한.

작업 흐름은 다음과 같습니다/가정에서

  1. 편집 파일/youruser/yourwiki - 작업 - 복사/
  2. 가 SVN
    • 이 후크는/var 파일을 업데이트 후 확약 않습니다/WWW/(또는 위키가 위치한 곳)
  3. 오도 1
,

이 방법을 사용하면 사용 권한에 대해 걱정할 필요가 없으며 버전 관리의 모든 이점을 통해 웹 사이트에서 한 명 이상의 사용자가 작업 할 수도 있습니다.

+0

Isak이 작업은 가능하지만 문제는 내 작업 사본이/var/www입니다. http : // localhost/wiki를 통해 파일에 액세스하면/var/www에있는 파일을보고 편집하는 중입니다. –

+0

@Max : "아파지 않으면 해!" SVN은 당신이 사용하려고하는 스타일에 맞게 설계된 것이 아닙니다. –

+0

@David : 저는 이것이 Subversion이 "설계되지 않았습니다"라고 생각하지 않습니다. ... 내가 궁금해했던 사용 권한으로 작은 불일치 (끈적한 사용 권한 비트 설정으로 해결됨)가 있습니다. –

관련 문제