2009-08-05 5 views
46

저는 Subversion을 처음 사용하지는 않았지만, 지금까지 Tortoise를 사용했으며 commadn 라인은 사용하지 않았습니다. 내 질문은, 루트 이외의 모든 소스에서 * .o와 같은 모든 파일을 무시하는 방법입니다. 예를 들어Subversion의 전체 소스 트리에서 파일을 재귀 적으로 무시합니다.

, 나는 다음과 같은 파일이있는 경우 : /myfile.o /folder1/myfile2.o svn의 경우 /folder2/myfile4.o

/folder1/folder1.1/myfile3.o을 propedit svn : 무시 "." 루트 디렉토리에서 * .o를 추가하면 myfile.o는 무시되지만 /folder1/myfile2.o, /folder1/folder1.1/myfile3.o, /folder2/myfile4.o는 무시하지 않습니다. * .o를 전체 프로젝트에 추가하는 방법이 있습니까? (이 프로젝트는 다른 많은 프로젝트가있는 저장소에 있기 때문에 전체 저장소에서 수행 할 수 없습니다.

내가 명확히해야하는지 알려 주시기 바랍니다. 감사!

답변

63

편집 아래에 제공된 원래의 대답은 루트 디렉토리에 svn:ignore 속성을 교체/무시하지 않고 (svn:global-ignores라고도 함) 무시 기본 저장소 레벨을 설정하는 방법을 소개 서브 버전 V1.8 이전에 주어졌다

모든 단일 하위 디렉토리. , 당신은 여전히에 표시된 방법을 사용할 수 있습니다

svn propset svn:global-ignores '*.o' . 
이전 버전에

(및 이후 버전) : 1.8 있기 때문에, 당신이 원하는 것을 달성하기 위해 가장 좋은 방법은 (신용 TManhente로 이동) 다음 명령을 호출하는 것입니다 아래의 원래 대답; 그러나 이것은 각 서브 디렉토리에있는 svn:ignore 속성을 대체/덮어 쓰기하는 것으로 괜찮다고 가정합니다 ... 이것은 작은/새로운 저장소에 대해서는 문제가되지 않지만 큰/오래된 저장소가 있으면 원하는 것이 아닐 수도 있습니다 일부 하위 디렉토리에 덮어 쓰기를 원하지 않는 속성 인 svn:ignore이있을 수 있습니다.

원래 대답

당신은 "-R"또는 다음 명령으로 "svn의 propset"와 "--recursive"옵션을 사용할 수 있습니다

 
svn propset svn:ignore '*.o' . --recursive 

더 많은 정보

: 두 경우 모두 들어

, 당신은 svn의 propset에 대한 자세한 정보를 원하시면 다음 명령을 사용할 수 있습니다

+0

감사합니다. 나는 아직도 그들의 문서를 듣고있다. 내가 말했듯이, 지금까지, 전적으로 거북이를 사용했고, 당신에게 멋진 대화 상자와 설명을 제공합니다 :). – alanquillin

+1

당신도 --force'svn propset svn : ignore "* .pdb * .db"c : \ portal \ - 재귀 --force' –

+43

대답은 당신이 가진 모든 다른 svn : ignore 설정을 없앨 것입니다. 그들. 당신은 그때 원할 수 있습니다 http://stackoverflow.com/questions/3086418/svn-revert-all-properties-changes –

38

그냥 업데이 트 :이 경우에 사용할 수 있습니다 도입 서브 버전 1.8.0 상속 된 속성저장소 지시 한 구성 (자동 소품과 무시).

루트 경로에 새 svn:global-ignores 속성을 설정할 수 있습니다. 속성이 설정된 경로를 루트로하는 하위 트리에만 영향을줍니다.

이 새 속성은 단지 svn:ignore 같이 설정됩니다

svn propset svn:global-ignores '*.o' . 

더 많은 정보가 Subversion 1.8.0 Release Notes에서 사용할 수 있습니다.

+0

자동 소품을 사용하여 설정하는 방법을 알고 싶습니다. – mgouin

3

의견에서 @ hackmaster.a가 지적한 바와 같이, 수락 된 대답에 주어진 예는 이전의 모든 svn:ignore 설정을 지우는 부작용이 있습니다. propset 대신 propedit을 사용하면 작동하지 않습니다.

여러 재귀 예를 들어 svn propset svn:ignore "[LIST]" .

으로 svn:ignore 속성 세트에 새로운 라인으로 구분 된 목록에 이름을두고있다 파일을 추가 할 수있는 올바른 방법 : 물론

svn propset svn:ignore -R "*.pkl 
    > *.class 
    > Thumbs.db 
    > data.tmp" . 

> 's을 (를) 쉘 프롬프트입니다.

이 명령은 . 현재 디렉터리와 각 하위 폴더의 svn:ignore 속성을 재귀 적으로 변경합니다.

+0

1.7.4 whipes를 사용하여 모든 svn : 무시 – lrkwz

+0

감사. 그것은 svn, 버전 1.8.10과 함께 작동합니다. –

관련 문제