2010-12-08 5 views
0

현재 OSS 프로젝트의 트렁크에서 포크로 기능을 선택하려고합니다. 두 저장소 모두 git을 사용하며 트렁크를 분기로 가져 와서 쉽고 편리하게 만들어야합니다."OR"절과 함께 git-log 또는 - git-log 출력을 병합하는 방법은 무엇입니까?

필자가 취하는 접근법은 한 지점에서 다른 지점으로 모든 관련 커밋을 선택하려고 시도하는 것입니다. 즉, 나는 곧바로 병합을 수행 할 수 없습니다. 분기 된 항목이 너무 많습니다. 나는 체리 픽에 내가 발견 한 시작해야 커밋의 목록을 생성하기 위해

git-log 명령을 실행합니다 :

git log --branch project-trunk **/*Foo* 

이가있는 모든 파일에 대해 나에게 로그를 제공하기위한 것입니다 단어 "Foo"는 project-trunk 지점에 있습니다. 이것은 꽤 좋은 출발점이지만 관련된 다른 커밋이 있다는 것을 알았습니다. 다행히 커밋 로그에 식별 작업이 있습니다. 그래서 내가 사용하고 다음을 찾을 수 있습니다 :

git log --branch project-trunk --grep Bar 

이 나에게 일 "바"를 포함 분기 project-trunk의 모든 로그를 제공합니다.

문제는 마스터 목록이 필요하다는 것입니다. 시간순으로 두 명령의 결합이 포함 된 순서로 정렬됩니다. git rev-list 설명서를 읽었지만 원하는대로 할 수는 없습니다.

이렇게 두 가지 별도 조건을 결합 할 수 있습니까? 그리고 그렇지 않다면 두 개의 git-log 명령의 출력을 연대순으로 결합하는 간단한 방법이 있습니까?

답변

0

나는 초조해하고 좀 더 주위를 연주와 나는 작동하는 것 같다 다음 내놓았다 : 누군가가 그것을 개선 할 수있는 경우

(git rev-list --grep=Bar heads/project-trunk; git rev-list heads/project-trunk **/*Foo*) | git log --stdin --no-walk --reverse 

전혀 알려주세요! 희망이 미래에 다른 사람을 도울 ...

관련 문제