2011-05-15 4 views
6

MqTutorialHGbook Chapter 13에 설명 된대로 MQ와의 작업 흐름을 설정하려고합니다. 필자가 고심하는 부분은 여러 버전의 패치 대기열을 사용하는 방법입니다.다중 hg mq 패치 대기열 방법 (하나의 저장소와 여러 하위 작업)

대안 :

I. 모든 큐에 대해 별도의 저장소를 생성합니다. 오류가 다음과 같은 결과 : 다음 .hgsub 파일

문제에 subrepos으로이 관리 마크에게 REPOS를 확인하려면 경로는 불법 요소

.hg/patches-queue1 = .hg/patches-queue1 

II를 포함하고 있습니다. HGbook Chapter 13

qnew queue1/patch1.diff 

문제와 같은 하위 디렉토리에 패치를 추가 할 수 있다는 설명 : 모든 패치가 같은 큐에 여전히 주문

에 적용 할 수있는 아래 내 모든 패치 큐를하는 또 다른 방법이 있나요 버전 제어 및 푸시? 하나의 저장소에 여러 개의 HG MQ 패치 대기열이 있습니까?

답변

14

mq의 일부인 hg qqueue 명령을 확인하십시오. 당신은 .hg에서 물건을 외부 (외부/부모)의 repos의 하위의 repos 할 수 없습니다

hg qqueue [OPTION] [QUEUE] 

manage multiple patch queues 

    Supports switching between different patch queues, as well as creating new 
    patch queues and deleting existing ones. 

    Omitting a queue name or specifying -l/--list will show you the registered 
    queues - by default the "normal" patches queue is registered. The 
    currently active queue will be marked with "(active)". 

    To create a new queue, use -c/--create. The queue is automatically made 
    active, except in the case where there are applied patches from the 
    currently active queue in the repository. Then the queue will only be 
    created and switching will fail. 

    To delete an existing queue, use --delete. You cannot delete the currently 
    active queue. 

    Returns 0 on success. 

options: 

-l --list list all available queues 
-c --create create new queue 
    --rename rename active queue 
    --delete delete reference to queue 
    --purge delete queue, and remove patch dir 

하지만 다른를 가질 수 있어야한다 : 그것은 당신이 자동화 된 방식으로 여러 패치 큐를 전환 할 수 있습니다 각각의 qqueue repos에 대한 경로를 지정하고, 아마도 그것들을 .hg/patches 안에있는 부모 repo의 모든 subrepos로 만듭니다.