2013-02-12 2 views
0

데보와 QA 버전의 저장소가있는 상황이 있습니다.수은을 당기거나 밀어 넣을 때 디렉토리를 무시하십시오.

나는 항상 푸시/당기기를 원하는 코드가 들어있는 foo 디렉토리가 있습니다. 일반적으로 해당 영역과 관련된 항목 (관련이없는 항목)이 들어있는 디렉터리 표시 줄이 있지만 때로는 밀어 넣기/끌기를 원하는 항목이 포함됩니다.

  • qa로 푸시 - foo 만 취하지 만 막대의 변경 사항은 무시합니다.
  • qa로 푸시 - foo와 bar를 모두 사용합니다.
  • qa로 푸시 - foo와 bar 중 일부가 걸리는 방식으로 푸시합니다.

내가 알 수있는 것으로부터, 병합 후 특정 파일을 되돌리고 다시 커밋해야합니다. 이것은 괜찮은 편이지만 약간 뒤로 보입니다. Mercurial이이 워크 플로우를 지원할 수있는 더 좋은 방법이 있습니까?

+0

밀어 넣기는 변경 집합 수준에서 작동합니다. 변경 세트에 원하지 않는 것들이 포함되어 있다면, 어떤 식 으로든 스스로 해결해야합니다. –

답변

1

크리스 모건 (Chris Morgan)이 말했듯이, 그것이 실제로 머큐리얼이 작동하는 방식은 아닙니다. 다른 저장소로 푸시하면 많은 변경 집합이 푸시됩니다. 변경 집합에있는 항목은 모두 푸시됩니다. 이 (내 생각에)는 매우 무시 무시한 해결 방법은 비록

한 가지 가능한 해결책은 당신이 --filemap 옵션을 사용하여 원하지 않는 것을 필터링, 새 저장소를 만들 수 Convert 확장자를 사용하는 것입니다.

그러나 QA로 간다면 어쨌든 Mercurial 저장소가 필요합니까? 단순히 (태그가 추가 된) 버전을 보관할 수 있습니다. 기본적으로 아카이브에는 .hgarchival 파일에 보관중인 변경 집합에 대한 정보가 포함됩니다. 예를

를 들어
hg archive -X "bar/**" archive.tgz 

...은 "바"디렉토리 않고 현재 시점에서 당신의 repo의 아카이브를 포함하는 파일 archive.tgz을 만듭니다. 특정 파일을 제외하려면 -X 옵션을 여러 번 사용할 수 있습니다.

관련 문제