소스 코드 저장소로 git을 사용하여 Java 응용 프로그램을 개발하고 있습니다. 다른 자바 개발자와 프로젝트를 공유하고 싶은데 hg가 가장 많이 사용되는 것 같습니다.
내 질문은 git 저장소를 hg로 어떻게 변환합니까?
인터넷 검색을 시도하면 “git을 hg로 변환”하고 모든 검색 히트는 hg에서 git로 변환하는 것입니다. TortoiseHg 도 사용하고 있습니다.
답변
이 hg convert
유틸리티는 설치 후 기본적으로 켜져 있지 않습니다. 그렇게 설정하려면 .hgrc
파일에 다음을 추가 하십시오.
[extensions]
hgext.convert=
Windows에서 TortoiseHg 를 사용하는 경우이 파일은 홈 디렉토리에 mercurial.ini
. 이 설정 변경 후 hg convert
유틸리티 를 사용할 수 있습니다 .
답변
Mercurial Convert 확장 을 사용하여
.hgrc
또는 확장을 활성화 하려면 다음 줄을 추가하십시오 .
[extensions]
hgext.convert=
그리고 입력
cd src
hg convert --datesort . dst
( 몇 가지 문제가 발생할 수 있지만 …)
참고 :: metrix 는 이것이 작동하지 않을 수 있다고보고합니다.
hg convert --datesort src dst
참고 :
hg convert
소스 디렉토리가 아닌 디렉토리에서이 명령을 수행하면 버그가 발생합니다 .
다음과 같은 오류가 발생합니다.
abort: cannot read tags from git-repo4/.git
Windows XP에서 git 1.7.9 및 Mercurial 2.6.2로 확인
답변
http://hg-git.github.com/ 유틸리티 : Mercurial 용 Git 플러그인 을 살펴볼 수 있습니다 .
이 플러그인은 원래 GitHub 사람들이 개발했으며 git <-> mercurial에서 무손실로 변환 할 수 있습니다. 이론적으로는 hg 저장소를 복제 할 수도 있습니다.
답변
Mercurial 상태를 통한 분산 개정 제어 :
convert에서 지원하는 개정 제어 도구는 다음과 같습니다.
- 파괴
- CVS
- 힘내
- Darcs
그렇다면 추가 도구가 필요하지 않을까요?
답변
변환 확장 기능이 작동 할 수 있지만 그렇지 않은 경우 분산 된 다양한 SCM간에 변환하기위한 범용 도구 인 재단사 를 확인 하는 것이 좋습니다.
답변
당신은 그것을 전혀 변환 할 수 없습니다. Hg-Git 플러그인을 사용하십시오 ! 아무도 그 차이를 알지 못할 것입니다.
답변
새로운 플레이어 : git-remote-hg . git에서 기본 브리징 지원을 제공합니다.
다만:
hg init ../hgrepo
git push hg::$PWD/../hgrepo