문제

Subversion에 "충돌을 일으키지 않는 한 업데이트 / 병합"을 알리는 방법이 있습니까?

업데이트를 실행하기 전에 --dry-run / status -u를 사용하여 확인할 수 있다는 것을 알고 있지만 다른 사람들이 업데이트를 실행하고 "C index.php"줄을 인식하지 못해 웹 페이지가 손상되는 경우가 많습니다.

저는 또한 svn이 충돌에 대해 너무 불행 해 보이지 않는다는 것을 알아 챘습니다. 충돌에 관계없이 여전히 "updated to revision blah"라고 말하고 0을 종료합니다.그래서 나는 그것들을 발견하기 위해 라인 단위 출력을 파싱해야합니다.확실히 더 나은 방법이 있습니까?

도움이 되었습니까?

해결책

-accept 매개 변수를 사용하여 충돌이 발생할 때 어떤 일이 발생해야하는지 나타낼 수 있습니다. 라코 디스

대화 형 충돌 해결 페이지

다른 팁

그래픽 도구를 사용하는 것이 더 좋은 방법일까요?또는 출력을 파일로 리디렉션하고 끝에 "cat svnupdate.log | grep"^ C ""를 실행하여 충돌을 표시하는 업데이트를 수행하는 스크립트를 작성 하시겠습니까?

내가 사용하는 그래픽 도구 (TortoiseSVN 및 Netbeans)를 사용하면 끝에 불쾌한 소음이 발생하고이를 처리하기위한 병합 선택 대화 상자가 표시됩니다.명령 줄 도구만큼 강력한 기능을 가진 제품은 없습니다.

@jsight : TortoiseSVN은 훌륭하지만 주로 X가없는 * NIX 환경에서 개발합니다. 그래서 저는 보통 명령 줄을 사용합니다 (제한된).

당신의 스크립트 제안에서, 그것이 제가 지금 작업하고있는 것입니다. 그래서 제가 $?를 확인할 수 없어서 짜증이납니다.지금은 "파일로 출력"을 건너 뛰고 파이프를 사용하고 있습니다. 그렇지 않으면 정확히 설명합니다.

-diff3-cmd 매개 변수를 사용하여 사용할 병합 도구를 지정할 수 있습니다 (일반적으로 diffutils의 diff3).

사전 커밋 스크립트를 사용하여 파일에서 충돌 마커를 찾고있는 경우 커밋을 방지 할 수도 있습니다.

Subversion 1.5 (최근 출시)는 "--accept"인수를 사용하여 업데이트 충돌 중에 발생하는 작업을 지정하는 기능을 추가합니다.

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