[svn] SVN이있는 디렉토리를 어떻게 무시합니까?

방금 SVN을 사용하기 시작했으며 소스 제어에서 필요하지 않은 캐시 디렉토리가 있습니다. SVN을 사용하여 전체 디렉토리 / 폴더를 어떻게 무시할 수 있습니까?

OS X 및 명령 줄에서 버전TextMate 를 사용 하고 있습니다.



답변

svn:ignore상위 디렉토리 의 특성을 설정하십시오 .

svn propset svn:ignore dirname .

무시할 사항이 여러 개인 경우 속성 값에서 줄 바꿈으로 구분하십시오. 이 경우 외부 편집기를 사용하여 속성 값을 편집하는 것이 더 쉽습니다.

svn propedit svn:ignore .


답변

디렉토리 구조의 예는 다음과 같습니다.

\project
    \source
    \cache
    \other

project당신이 볼 때 캐시 디렉토리가 추가되지 않고 그대로 표시됩니다.

> svn st
M  source
?  cache

ignore 속성을 설정하려면

svn propset svn : ignore 캐시.

여기서 svn:ignore설정하려는 속성의 이름, 속성 cache의 값 및 .이 속성을 설정하는 디렉토리입니다. 의 상위 디렉토리 여야합니다cache특성이 필요한 .

설정 한 속성을 확인하려면

> svn proplist
Properties on '.':
  svn:ignore

의 가치를 보려면 svn:ignore:

> svn propget svn:ignore
cache

이전에 설정 한 속성을 삭제하려면

svn propdel svn:ignore


답변

언급해야 할 중요한 사항 :

커맨드 라인에서는 사용할 수 없습니다

svn add *

명령 줄이 확장 *되어 svn add모든 파일을 추가하기를 원 하기 때문에 무시 된 파일도 추가 됩니다. 따라서 이것을 대신 사용하십시오.

svn add --force .


답변

이 작업을 수행하는 데 시간이 걸렸으므로 SVN에 파일이 이미 있으면 파일 svn delete을 편집 한 다음 svn:ignore속성 을 편집해야 합니다.

나는 그것이 명백해 보인다는 것을 알고 있지만, 그들이 ?svn status지역에서 무시할 것이라고 생각했을 때 그들은 내 목록과 같이 계속 나타났습니다 .


답변

svn 명령 줄 도구를 사용하여이 작업을 약간 확장하려면 다음을 입력하십시오.

svn propedit svn:ignore path/to/dir

선택한 텍스트 편집기를 연 다음 ‘*’를 입력하여 내부의 모든 것을 무시하고 저장 + 종료하십시오.이 디렉토리는 svn의 디렉토리 자체를 포함하지만 내부의 모든 파일은 무시하고 디렉토리를 무시하려면 부모의 경로를 누른 다음 파일에 디렉토리 이름을 입력하십시오. 저장 후 업데이트 ( ‘svn up’)를 실행 한 다음 적절한 경로를 확인하십시오.


답변

svn:ignore상위 디렉토리 에서 특성을 설정하십시오 .

$ cd parentdir
$ svn ps svn:ignore . 'cachedir'

현재의 모든 값을 덮어 씁니다 svn:ignore. 다음을 사용하여 값을 편집하십시오.

$ svn pe svn:ignore .

편집기가 열립니다. 한 줄에 하나씩 여러 패턴을 추가 할 수 있습니다.

다음을 사용하여 현재 값을 볼 수 있습니다.

$ svn pg svn:ignore .

GUI를 사용하는 경우이를 수행하기위한 메뉴 옵션이 있어야합니다.


답변

위의 모든 기여에 감사드립니다. 파일을 무시하면서 내 경험에서 얻은 추가 정보를 공유하고 싶습니다.


폴더가 이미 개정 관리중인 경우

svn importsvn co파일을 , 우리가 일반적으로 처음하는 일.

모든 런타임 캐시, 첨부 파일 폴더는 버전 제어를받습니다. 따라서 svn ps svn : ignore 전에 저장소에서 삭제해야합니다.

SVN 버전 1.5 이상에서는을 사용할 수 svn del --keep-local your_folder있지만 이전 버전의 경우 내 솔루션은 다음과 같습니다.

  1. svn.svn 숨겨진 폴더 없이 폴더의 깨끗한 사본을 내 보냅니다 .
  2. svn del 로컬 및 저장소
  3. svn ci
  4. 폴더를 다시 복사
  5. 수행 일 SVN 과 폴더로 플래그가 확인 ‘?’
  6. 이제 우리는 솔루션에 따라 svn ps를 할 수 있습니다

둘 이상의 폴더를 무시해야 할 때

  • 하나의 디렉토리에는 두 개의 폴더가 있어야합니다. svn:ignore
  • 하나를 설정하면 다른 하나가 제거됩니다.
  • 그런 다음 svn pe 가 필요한지 궁금합니다.

svn pe텍스트 파일을 편집해야하며 vi를 사용하여 텍스트 편집기를 설정해야하는 경우이 명령을 사용할 수 있습니다 .

export SVN_EDITOR=vi
  1. “o”를 사용하면 새로운 줄을 열 수 있습니다
  2. 무시하려는 모든 폴더 이름을 입력하십시오
  3. 편집 모드에서 빠져 나오려면 ‘esc’키를 누르십시오
  4. “: wq”를 입력 한 후 Enter저장하고 종료하십시오.

파일은 다음과 같이 간단하게 보입니다.

runtime
cache
attachments
assets