최고의 필수 hg / 수은 확장은 무엇입니까?
나는 최근에 Hg / mercurial, 즉 Fogcreek 's Kiln과 함께 손을 대고 있었고, 꼭 필요한 확장이 무엇인지 알아 내려고 노력하고 있습니다. 설명이 멋져 보이지만 버그가 있거나 비실용적 인 확장을 테스트하는 데 관심이 없기 때문에 확장 목록을 살펴 보는 것이 약간 까다 롭습니다.
그렇다면 어떤 hg 확장을 사용합니까?
확장 사용을 참조하십시오.
내 히트 목록 :
필요한 간단한 것 :
color
: 명령의 색상 화 출력 좋아diff
하고status
평가하기 쉽게 만드는.pager
: 한 번에 한 페이지 씩 긴 출력을 검색합니다.fetch
: 한 단계에서 다른 저장소에서 가져 오기, 업데이트 및 병합합니다.graphlog
: 셸에 개정 그래프를 표시합니다. 로그 기록에서 분기를 보는 데 매우 유용합니다.hgk
: 그래픽 인터페이스로 저장소 탐색 (TortoiseHg 및 Murky 참조)
을 활성화 pager
하면 특정 명령을 방해하지 않도록 구성해야합니다.
[pager]
pager = LESS='FSRX' less
ignore = version, help, update, serve, record
내가 강력히 추천하는 (그리고 자주 사용하는) 중간 확장 :
record
: 커밋 할 파일 덩어리를 대화식으로 선택할 수 있습니다. 한 세트의 변경 작업을 진행 중이고 자체 커밋이 있어야하는 항목을 수정하게되는 경우에 적합합니다.extdiff
: 외부 비교 도구 (예 : meld) 구성share
: 동일한 저장소 기록을 사용하는 여러 클론이 있음
내가 없으면 안 될 고급 확장 :
mq
: 패치 스택을 관리합니다. 매우 강력하여 트리 위에 패치를 레이어링 할 수 있습니다.notify
: 저장소 변경시 이메일 알림을 보냅니다.rebase
: 새 상위 개정판 위에 로컬 변경 사항을 다시 적용합니다.largefiles
: hg 저장소 외부의 대용량 바이너리 파일 작업
위의 모든 것은 Mercurial과 함께 번들로 제공되며 안정적이고 잘 테스트되었습니다. 나는 그들 모두를 강력히 추천합니다.
조사 할 가치가있는 비 핵심 확장 :
shelve
: 선택적으로 변경 사항을 제쳐두고 (덩어리 단위로) 복원합니다.acl
: 저장소 트리의 다른 부분에 대한 액세스를 선택적으로 허용
대체 확장 및 코어로 마이그레이션 됨 (@ durin42의 정보) :
forest
subrepo
v1.3에 도입 된 지원 으로 대체되었습니다.bookmarks
코어에 있으며 항상 활성화되어 있습니다.transplant
graft
핵심 명령 인으로 대체됩니다 .histedit
v2.3부터 코어에 있지만 기본적으로 비활성화되어 있습니다.inotify
경쟁 조건으로 인한 버그가있는 것이므로 권장되지 않습니다.
graphlog
그리고 mq
특히 맛있는.
- 변환 : 다른 시스템과 변환
- Mq (Mercurial Queues) : 패치 스택으로 변경 사항 처리
- Forest : 여러 중첩 된 Mercurial 저장소를 한 번에 커밋하고 업데이트 할 수 있습니다.
- 공유 : 유사한 저장소로 작업 할 때 시간 및 디스크 공간 절약
- Hgk : 역사를 그래픽으로 보여줍니다.
- Graphlog : 저는 항상 'hg log'가 아닌 'hg glog'를 입력합니다. 역사에 대한 아스키 예술관
- 이식 : 다른 분기의 몇 가지 변경 집합 만 병합하려는 경우 유용합니다. 최신 버전
hg rebase
은 일부 중복 될 수 있습니다. - 리베이스 : 브랜치 상단에 일련의 변경 세트로 변경을 처리하는 다른 방법입니다.
git
사용자는 리베이스를 좋아합니다.mq
많은 사용 사례를 대체 할 수 있습니다. - Shelve : 잠시 동안 다른 작업을해야하는 경우 작업 복사본의 변경 사항을 숨길 수있는 장소입니다.
- 북마크 : 특정 분기에 대한 최신 커밋의 이름을 지정합니다.
git
가지 와 비슷합니다 .
아직 언급되지 않음 : mercurial_keyring
https://www.mercurial-scm.org/wiki/KeyringExtension
"Keyring extension uses services of the keyring library to securely save authentication passwords (HTTP/HTTPS and SMTP) using system specific password database (Gnome Keyring, KDE KWallet, OSXKeyChain, dedicated solutions for Win32 and command line)."
I use ssh to access my repos on GitHub and Bitbucket, and my keyphrase is held in the keychain. This extension lets Mercurial get it whenever needed.
Also required for me: hg-git
Mercurial plugin letting you pull and push git repos using hg as a client. Use it all the time.
If you're working with a slowish host like Bitbucket, progress is essential. Otherwise hg push
looks like it's hung :\
My list:
graphlog. I use it much more than hg log. (wish it could restrict to branches)
purge. remove all files not in Mercurial. I use this instead of or as a cleaner version of make clean.
Less used, but nice:
- children (lets you say "hg children -r XXX")
- parentrevspec: lets you say stuff like "foo~2 = foo^1^1 = foo^^ = first parent of first parent of foo"
I keep trying to use the history editing tools, but keep running into limitations. I want them to work.
- collapse
- histedit
- I consider rebase a history editing tol as well
By the way, beware: hgk and fetch are "unloved": https://www.mercurial-scm.org/wiki/UnlovedFeatures. But then, SubRepos are, not unloved, but a feature of last resort, and I use subrepos.
참고URL : https://stackoverflow.com/questions/1869040/what-are-the-best-and-must-have-hg-mercurial-extensions
'developer tip' 카테고리의 다른 글
'사용'문 대 '마지막으로 시도' (0) | 2020.10.24 |
---|---|
RuntimeException을 발생시키는 메소드가 메소드 서명에 표시해야합니까? (0) | 2020.10.24 |
Python 스크립트 헤더 (0) | 2020.10.24 |
Bash CTRL을 사용하여 단어 / 문자열간에 커서 이동 (0) | 2020.10.24 |
java.security.InvalidAlgorithmParameterException : Linux에서 trustAnchors 매개 변수가 비어 있지 않아야합니다. 또는 기본 신뢰 저장소가 비어있는 이유 (0) | 2020.10.23 |