문제

일반적으로 다음을 다음에 추가하여 확장을 활성화합니다. .hg/hgrc:

[extensions]
hgext.win32text=
[encode]
** = cleverencode:
[decode]
** = cleverdecode:

그러나이 구성이 저장소의 일부 (즉, 저장소의 일부)를 사용하여 저장소를 복제하는 다른 사람 (동료, 빌드 머신)을 활성화하기를 원합니다. 저장소를 복제하는 사람은 누구나 할 필요가 없어야합니다. 아무것 이러한 확장을 가능하게합니다.

불가능한 것 같습니다 문서, 그러나 여기서 나를 도울 수있는 깔끔한 트릭을 아는 사람이 있습니까?

도움이 되었습니까?

해결책

레포를 복제 할 때 Mercurial이 자동으로 무언가를 수행하기를 원합니다 (후크 또는 구성 업데이트). 선적 서류 비치 불가능하다고 말하고 아주 좋은 이유를 말합니다.

Hooks do not propagate

In Mercurial, hooks are not revision controlled, and do not propagate when you clone,
or pull from, a repository. The reason for this is simple: a hook is a completely    
arbitrary piece of executable code. It runs under your user identity, with your 
privilege level, on your machine. No comments

It would be extremely reckless for any distributed revision control system to 
implement revision-controlled hooks, as this would offer an easily exploitable way to 
subvert the accounts of users of the revision control system. No comments

따라서 Mercurial 자체는 귀하의 문제를 해결하지 못할 것입니다. 당신은 당신이 당신의 문제를 해결하기 위해 Mercurial 외에는 아무것도 원하지 않는다고 분명히 말합니다. 그래서 대답은 다음과 같습니다. 당신이 요구하는 것은 불가능합니다.

문제를 해결하는 유일한 방법은 모든 사용자가 원하는 작업을 수행하는 주어진 스크립트, 올바른 후크 설치와 같은 주어진 스크립트를 한 번 이상 실행/설치해야한다는 것입니다.

이것에 대해 영리하고 싶다면 :

  • 오른쪽 구성을 설치하여 오른쪽 구성을 .hg 또는 사용자로 복사하기 위해 실행할 일회성 스크립트를 만듭니다.
  • 일단 설치되면 후크가 스크립트를 업데이트하여 사용자에게 구성 업데이트를 배포 할 수 있는지 확인하십시오.
  • 후크가 메시지를 커밋하기 위해 특별한 표시를 추가하십시오
  • 특별 메시지를 전달하지 않는 중앙 저장소 커밋에 대한 거부

조금 복잡하지만 그것은 당신의 요구 사항에 대해 상상할 수있는 가장 가까운 것입니다.

  • 사용자는 한 번 스크립트를 실행하고 잊어 버립니다
  • 실행되지 않으면 중앙 레포에 헌신 할 수 없는지 확인할 수 있습니다.

다른 팁

Mercurial의 현재 개발 버전 (7 월 1 일 Mercurial 1.3으로 출시)은 %include 구성 파일의 지시문.

그것은 당신이 사람들에게 넣도록 요청할 수 있음을 의미합니다

%include ../common-hgrc

~ 안으로 .hg/hgrc. 그렇게 한 후에는 변경 사항을 저지르면서 수은 설정을 효과적으로 제어 할 수 있습니다. common-hgrc. 그들이 변경을 당기면 새로운 설정이 적용됩니다.

이것은 위험하다는 점에 유의하십시오. 저장소에 변경 사항을 끌어 당길 수있는 사람은 이제 임의의 고리를 삽입 할 수 있습니다. common-hgrc 그리고 당신은 다음 Mercurial Command에서 그것들을 실행합니다 ( "안전한"명령 줄조차도 hg status).

당신은 projrc 확장.

“이 확장은 추가 구성 설정을 위해 Mercurial을보고 .hg/projrc를 구문 분석합니다. 파일은 클론과 풀에 전송됩니다 (그러나 절대 푸시하지 않음)””

링크를 만드는 것은 어떻습니까 .hg/hgrc 예를 들어 customhg/hgrc 버전이 나옵니다. 그런 다음 다시 복사하는 후크를 만들어야합니다. .hg/hgrc - 예 : 각 업데이트 후.

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