2017-03-17 1 views
3

TortoiseSVN을 사용하는 사용자가 "커밋"하기 전에 분기를 "업데이트"할 수있는 방법은 무엇입니까? 조 커밋 (102) Subversion : 사용자가 커밋 전에 업데이트하도록합니다.

  • 개정 (103), BRANCH1에

    • 조 BRANCH1에 커밋, 밥은 다음 BRANCH1을 다운로드하고 101
    • 이 BRANCH1에 커밋 개정, 개정 :

      우리는 오늘 아침에이 문제에 달렸다. .. 그리고 SVN은 일반적으로 또한

    발생으로 "당신이 커밋하기 전에 업데이트해야한다"그를 말한 적이 :

    • 조에서 일하는/svnrepo/ProjectXYZ/지점/BRANCH1/directorya 위/
    • 밥에서 일하는
    • /svnrepo/ProjectXYZ/지점/BRANCH1/directoryb 위/

    이유/방법 SVN에 대한 모든 아이디어 먼저 사용자 업데이트를하지 않는이 단계를 건너 뛸 것인가?

  • +2

    Subversion이 이런 식으로 행동하는 것을 본 적이 없습니다. ** 항상 ** 작업 내용이 오래된 복사본에 대한 업데이트를 묻습니다. 여기서 워크 플로우에 대해 간과 할 부분이 있습니다. 또는 사용자가 서로 다른 하위 디렉토리에서 변경 작업을 수행 중일 수 있습니다.이 작업은 커밋하기 전에 항상 '업데이트'가 필요하지는 않습니다. – alroc

    +0

    Joe와 Bob이 서로 다른 디렉토리에서 작업하고 있다는 사실을 포함하도록 질문이 업데이트되었습니다. – SED

    답변

    3

    일단 Bob이 DirectoryB에서만 변경을했다면 루트 수준이 아닌 DirectoryB 수준에서 커밋을 한 것으로 생각했습니다. 즉, Joe가 이전에 수정 한 파일은 Bob의 커밋의 영향을받지 않습니다. 즉, Bob이 최신으로 수정 한 모든 파일이므로 업데이트가 필요하지 않습니다.

    내가이 개 가능한 솔루션을 참조하십시오
    1) 모든 사람이 루트 수준에서 커밋 할 -이 경우
    2) SVN 쓰기에 즉 "/ svnrepo/ProjectXYZ/지점/BRANCH1을"훅에게 http://svnbook.red-bean.com/en/1.7/svn.ref.reposhooks.pre-commit.html

    을 사전에 저지

    ** 레벨로부터 커밋을 통해 의미하는 바를 조금 더 자세히 설명하고,이 경우이 문제가 중요한 이유를 설명합니다.

    그래서 조 BRANCH1 디렉토리, directorya 위 디렉토리와 Hello.java는

    를 제출 한 수정 그리고 밥 directoryb 위 수준에서 최선을 다하고로 등록 된 것을 svn의

    cd /svnrepo/ProjectXYZ/branches/Branch1 
    svn commit DirectoryA/Hello.java 
    

    그런 다음 루트 수준에서 최선을 다하고 있다고 말할 수

    cd /svnrepo/ProjectXYZ/branches/Branch1/DirectoryB 
    svn commit Hello2.java 
    

    그런 다음 svn은 DirectoryB 만 등록하고 Hello2.java 파일은 변경된 것으로 등록합니다. 변경 사항 세트에는 공통 부분이 없으므로 업데이트가 필요하지 않습니다.

    관련 문제