여러 프로젝트 및 공급업체가 포함된 SVN 저장소를 생성하기 위한 올바른 단계별 및 구성인가요?

StackOverflow https://stackoverflow.com/questions/259600

  •  06-07-2019
  •  | 
  •  

문제

저는 Red Bean Software SVN Book과 SO에 대한 몇 가지 질문을 꽤 많이 읽었지만 먼저 단계별로 올바른 방식으로 진행하고 있는지 확인하고 싶습니다. 나는 그것을 사용하기 시작합니다.이 올바른지?

  1. SVN을 설치합니다.
  2. /usr/local/svn에 SVN 저장소를 만듭니다.디렉토리 구조는 다음과 같습니다.

    -- conf
    -- db
    -- format
    -- hooks
    -- locks
    -- README.txt
    
  3. 저장소 구성(프로젝트 및 공급업체 포함)을 위해 명령줄을 통해 폴더를 만듭니다.

    -- conf
    -- db
    -- format
    -- hooks
    -- locks
    -- projects
       -- project_name
          -- vendor
          -- trunk
          -- branches
          -- tags
       -- project_name
          -- vendor
          -- trunk
          -- branches
          -- tags
    -- README.txt
    
  4. 공급업체 코드를 올바른 프로젝트 이름 아래 공급업체 폴더로 체크아웃하세요.

  5. 올바른 프로젝트 이름으로 공급업체 코드를 트렁크로 내보냅니다. 아직 프로젝트 트렁크 파일이 없으므로 병합이 필요하지 않습니다.
  6. /svnroot/conf/passwd 및 /svnroot/conf/svnserve.conf에 사용자/권한을 생성합니다.
  7. svnserve가 실행 중인지 확인하고 로컬 SVN 클라이언트(TortoiseSVN)에서 필요한 프로젝트의 트렁크를 확인하세요.

공개 URL로 이를 제공할 필요가 없으므로 Apache용으로 구성하지 않습니다.서버는 우리 네트워크에 없지만 우리가 임대하는 전용 CentOS 상자입니다.어떤 생각과 조언이라도 감사드립니다.

편집하다:

시작할 코드나 프로젝트가 없어서 혼란스러워서 공급업체의 코드에서 새로 시작합니다.공급업체, 트렁크, 분기 및 태그 하위 폴더가 포함된 내 project_name을 포함하는 디렉터리 구조를 서버 어딘가에 만들고 이를 내 리포지토리로 가져온 다음 공급업체의 코드를 공급업체 폴더로 가져와야 합니까?공급업체로부터 업데이트를 받은 다음 해당 업데이트를 내 트렁크에 적용한 모든 변경 사항과 병합할 수 있다는 아이디어입니다.

도움이 되었습니까?

해결책

저장소 구성(프로젝트 및 공급업체 포함)을 위해 명령줄을 통해 폴더를 만듭니다.

Subversion 설치 디렉토리 내에 디렉토리를 만들어 저장소 구조를 생성한다는 의미입니까?그것은 매우 잘못된 것입니다.

다음을 통해 필요한 폴더를 생성해야 합니다. svn mkdir 파일 시스템을 통하지 않고 명령을 사용합니다.

~ 안에 /usr/local/svn Subversion 저장소의 물리적 구현이 있고 클라이언트를 통해서만 액세스해야 하며 "손으로" 만지지 마십시오.

예를 들어 file:// URL 구성표를 사용하면

svn mkdir file:///usr/local/svn/projects -m "Parent dir for projects created"

다른 팁

당신은 대부분 올바른 아이디어를 가지고있는 것 같지만, 당신의 용어는 약간 잘못되었습니다. SVN의 맥락에서 구체적인 의미를 가진 단어를 사용하고 있기 때문에 SVN 사람들을 혼란스럽게 할 것입니다. Davide가 말한 내용을 확장하기 위해 :

2) 같은 일을하여 저장소를 만듭니다 svnadmin create /usr/local/svn.

3) 폴더를 만듭니다. 아래가 아닌 목록의 부분이 필요하지 않거나 원하지 않습니다. projects/. 이러한 다른 디렉토리는 SVN이 수정을 추적하기 위해 사용하는 것입니다. 실제로 저장소에 있지 않습니다. 시스템 어딘가에서 디렉토리 계층을 작성하는 경우 project_name/ 하위 트리, 그런 다음 실행할 수 있습니다 svn import 각 프로젝트마다 한 번 (매번 목적지에 대해 다른 이름을 부여) 원하는만큼 여러 번. 디렉토리 구조가 생성됩니다.

4) "체크 아웃"대신, 나는 당신이 "가져 오기"또는 "체크인"(일반적으로 SVN Parlance에서 "Commit"이라고 불리지만 "체크인"이 이해 될 것임을 의미한다고 생각합니다). 가져 오기는 공급 업체 파일을 리포지토리에 추가합니다. 체크 아웃은 "작업 사본으로 알려진이 버전 디렉토리의 로컬 사본을 작성합니다. 팀의 모든 개발자에게는 자신의 작업 사본이 있어야합니다. 개발자가 작업 사본을 변경 한 후 svn commit 저장소에 변경 사항을 보냅니다. 팀의 다른 개발자들은 운영됩니다 svn update 이러한 변경 사항을 저장소에서 자신의 작업 사본으로 가져옵니다.

5) 최근에 SVN 책을 읽지 않았지만 공급 업체 지점의 버전을 트렁크에 복사하여 내보내지 말라고 지시한다고 생각합니다. SVN 용어로 내보내는 것은 디렉토리 트리를 배전하지 않음을 의미하며, 이는 분명히 원하는 것이 아닙니다.

2 단계 직후 6 단계와 7 단계를 수행하면 svn:// 대신 나머지 단계에 대한 저장소에 액세스하는 프로토콜 file:// Davide가 제안한대로 로컬 기계에서만 작동합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top