SVN을 사용하고 안정적인 생산 브랜치와 불안정한 트렁크가 있습니다. 각 릴리스에 대해 체리는 생산에 병합 될 트렁크의 항목을 선택합니다.Git SVN 워크 아웃 가능 svn mergeinfo - show-revs 가능
커밋 메시지에서 JIRA ID를 검색 할 때 병합해야하는 커밋에 대한 빠른 검색을 활용할 수 있도록 git svn으로 SVN Repo를 복제했습니다. 그러나, 나는 아직도 그것의 끝에 svn 병합과 내 병합을 않습니다.
장기간 지속되는 프로덕션 지점의 문제점 중 하나는 병합되지 않는 트렁크에 커밋이 남아 있다는 것입니다.
내가 가끔 실행이 문제를 해결하려면 다음svn mergeinfo --show-revs eligible https://my.server/svn/trunk https://my.server/svn/branches/PROD_V3.00
그러나이 정말 느립니다. 자식에 상당하지만, 이것은 단지 모든 커밋을 나열하는 것
git log prod..master
입니다.
이것은 svn 병합과 svn : mergeinfo 속성을 인식하지 못하기 때문에 발생합니까?
git을 사용하여 적합한 커밋을 빠르게 얻을 수있는 방법이 있습니까?
는 편집 : I가 Joes의 응답 시도
그러나, git cherry
그냥 SHA를 출력하고, 내가 병합을 수행 할 SVN 개정이 필요합니다. 따라서, 필자는 필요한 것을 얻기 위해 git svn find-rev
을 통해 SVN id를 찾아야했습니다.
git cherry prod master|cut -d' ' -f2|while read -r line; do git svn find-rev "$line"; done;
불행하게도,이 svn mergeinfo --show-revs eligible
보다 느립니다.
이미 SHA를 가지고 있고'git svn find-rev'를 호출하지 않으려는 경우 커밋 메시지에서 svn 리비전을 찾아 볼 수 있습니다. 여기에서 커밋 메시지는 일반적으로 git-svn에 의해 추가됩니다. 'git cherry prod master | cut -d ''-f2 | 읽는 동안 -r 행; git show -s --format = format : "% b" "$ line"| grep git-svn-id; 완료, ' –