2010-08-01 2 views
3

구성 파일 및 배포와 관련된 특정 문제가 있습니다. 프로젝트를 배포 할 때 결국 두 가지 분기로 이동합니다. 스테이징 및 프로덕션 (여기서 SVN 사용)배포하는 동안 버전 제어의 구성 파일

프로젝트의 로컬 작업 복사본에서 브랜치를 만듭니다. 이것이 끝나는 것은 스테이징 및 개발의 구성 파일 복사본을 덮어 쓰는 것이므로 배치 할 때마다 수동으로 들어가서 올바른 변경을해야합니다.

설정 파일을 돌이 킨 SVN에서 완전히 삭제하는 것이 합리적입니까? 아니면 이것을하는 또 다른 방법이 있습니까?

답변

2

일반적으로 저장소에서 여러 구성 파일을 유지 관리하지만 실제 이름 (예 : 배포에서 제외 된 전용 폴더)은 유지하지 않습니다. 그런 다음 배포 스크립트가 해당 구성 파일을 최종 위치에 복사합니다. 그래서 내 배포 루틴은 간다 :

  • 체크 아웃
  • 컴파일
+0

"배포 스크립트가 올바른 구성 파일을 최종 위치에 복사합니다."이것에 대해 자세히 설명해 주시겠습니까? – tipu

+0

스크립트를 사용하여 응용 프로그램을 오프라인 폴더에서 원하는 위치로 복사합니다. 이 스크립트는 폴더 구조를 만들고 파일을 복사하지만 다른 작업도 수행 할 수 있습니다. 이 특정 문제에 대해서는 여러 가지 구성 파일을 전용 폴더에 저장하고 배포 스크립트는 해당 파일을 응용 프로그램이 구성 파일을 필요로하는 실제 위치에 복사합니다. – tdammers

1

당신은 SVN에서 파일을 삭제하지 않으

  • 실행 배포 스크립트 - 그게에서 삭제하게됩니다 이후 배포 할 때 서버.

    SVN은 버전 관리에서 하나 또는 여러 개의 개별 파일을 제외하거나 무시할 파일 이름 패턴과 일치시키는 데 사용할 수있는 svn : ignore라는 기능을 제공합니다. 기본적으로 파일을 무시한다는 것은 SVN이 각각의 작업 복사본이나 배포 서버에 그대로 두어 각 위치마다 다를 수 있음을 의미합니다.

    명령 줄에서 ignore를 사용하는 방법은 두 가지가 있습니다.

    A : 디렉토리의 무시 특성을 편집하십시오.

    • cd trunk/blah을 사용하여 무시할 파일이있는 디렉토리로 변경하십시오.
    • svn propedit svn:ignore .을 사용하여이 디렉토리의 무시 특성을 편집하십시오. 그러면 텍스트 편집기가 열립니다.
    • 열린 파일에서 무시할 파일을 나타내는 줄을 추가하거나 수정하십시오. 예를 들어, *.txt 행을 추가하면 SVN이 .txt로 끝나는 모든 파일을 무시하게됩니다. config.php 줄을 추가하면 SVN이 config.php 파일을 무시하게됩니다.
    • 파일을 저장하고 종료하십시오.
    • 속성 변경을 커밋하십시오. svn commit -m "New Ignores"

    B : 단일 명령을 사용하여 디렉토리의 SVN 무시 특성을 설정하십시오.

    • cd trunk/blah을 사용하여 무시할 파일이있는 디렉토리로 변경하십시오.
    • svn propset svn:ignore config.php .을 사용하여 SVN ignore 속성을 설정하여 config.php 파일을 무시하십시오.
      • 속성 변경을 적용하십시오.svn commit -m "New Ignores"

      Good introductory article on svn:ignore

  • . " Official SVN documentation."

    관련 문제