2011-02-25 4 views
2

Mercurial SCM을 사용하려면 MercurialEclipse 확장명을 사용하여 Eclipse을 사용하고 있습니다.한 번에 여러 프로젝트의 변경 내용을 가져 오는 방법

저는 많은 프로젝트가 있으며 매일 아침 작업을 시작하기 전에 모든 최신 변경 사항을 가져오고 싶습니다. SVN 또는 CVS를 사용하면 모든 프로젝트를 선택하고 팀/업데이트를 클릭하면됩니다. 그러나 MercurialEclipse의 Team/Pull 명령은 여러 프로젝트를 선택하면 사용할 수 없습니다.

현재 각 프로젝트마다 Team/Pull 번으로 전화해야합니다. 그건 정말 짜증나. 한 번에 여러 프로젝트의 변경 사항을 가져올 수 있습니까?

답변

0

의도하지 않은 해결책 중 하나는 각각의 상위 리포지토리의 하위 버전을 만드는 것입니다. 의 .hgsub 파일로 뭔가 :

project1 = project1 
project2 = project2 
... 

그들 모두의 풀을 할 수있는 최고 수준의 'HG 풀'에 대한 충분한 것입니다.

당신은 아마 그것을 스크립팅하는 것이 좋습니다.

for therepo in $(find /my/project/root -type -d -name .hg) ; do 
    hg --repository ${therepo%.hg} pull 
done 
+0

서브 레포지토리는 외부 저장소에서'hg update'를 할 때 필요로 할 때 끌어 들이기 때문에 작동하지 않습니다.'hg pull'을 할 때가 아닙니다. 또한 누군가가 당신이 제안한 것처럼''hg pull'을해야 할 것입니다. 그리고 메인 repo에서 변경된'.hgsubstate' 파일을 커밋하십시오. –

2

당신은 마우스 오른쪽 버튼을 클릭, 그들 모두를 강조 할 수 및 동기화를 선택 : 나는 것 그 스크립팅하지만 유닉스 명령 행에서 제공 일식 모르겠어요. 원하는 경우이보기에서 가져올 수 있습니다 (변경 사항이 표시됩니다).