什么是最好的和必须的hg/mercurial扩展?

JJ *_*rer 73 mercurial

我最近和hg/mercurial一起涉足,即与Fogcreek的Kiln一起,我正在试图找出必须具有的扩展.它通过扩展列表进行了一些小巧的筛选,因为我对测试任何错误或不切实际的扩展都不感兴趣,即使它们的描述听起来很棒.

那么,你使用哪些hg扩展?

请参阅使用扩展

gav*_*inb 98

我自己的热门名单:

你必须拥有的简单:

  1. color:使用diff和等命令对输出进行着色status,这样可以更容易地进行评估.
  2. pager:一次浏览长输出页面.
  3. fetch:一步从另一个仓库中提取,更新和合并.
  4. graphlog:在shell中显示修订图,对于查看日志历史记录中的分支非常有用.
  5. hgk:使用图形界面浏览存储库(另请参阅TortoiseHg和Murky)

如果启用pager,则应将其配置为不干扰某些命令:

[pager]
pager = LESS='FSRX' less
ignore = version, help, update, serve, record
Run Code Online (Sandbox Code Playgroud)

我强烈推荐(并经常使用)中间扩展:

  1. record:允许您以交互方式选择要提交的文件数量 - 当您处于一组更改的中间时最佳,并最终修复应该拥有自己的提交的内容.
  2. extdiff:配置外部差异工具(如meld)
  3. share:让多个克隆使用相同的repo历史记录

高级扩展我不会没有:

  1. mq:管理一堆补丁.非常强大,允许在树顶部分层补丁.
  2. notify:更改仓库时发送电子邮件通知.
  3. rebase:在新的父修订版之上重新应用本地更改.
  4. largefiles:使用hg存储区外的大型二进制文件

以上所有都与Mercurial捆绑在一起,并且稳定且经过良好测试.我强烈推荐所有这些.

非核心扩展值得调查:

  1. shelve:有选择地放置更改(以帅哥的粒度)并恢复它们.
  2. acl:有选择地允许访问存储库树的不同部分

取代扩展并迁移到核心(来自@ durin42的信息):

  • forest已被subrepov1.3中引入的支持所取代
  • bookmarks 是核心并始终启用
  • transplantgraft核心命令所取代
  • histedit 在v2.3中处于核心状态,但默认情况下处于禁用状态
  • inotify 不推荐,因为竞争条件显然存在错误

  • 您列表中的这些标记为**弃用**:`fetch`,`graphlog`和`record`。使用`hg extensions help'看到了 (2认同)

joe*_*ker 9

graphlog而且mq特别好吃.

  1. 转换:与其他系统进行转换
  2. Mq(Mercurial Queues):将更改作为一堆补丁处理
  3. Forest:允许您一次提交并更新许多嵌套的Mercurial存储库
  4. 共享:使用类似的存储库时节省时间和磁盘空间
  5. Hgk:给出了历史的图形视图
  6. Graphlog:我总是键入'hg glog'而不是'hg log'.ascii艺术观的历史
  7. 移植:当您只想从另一个分支合并一些变更集时很有用.较新的hg rebase可能有一些重叠.
  8. Rebase:一种不同的方式,可以将更改作为一组分支上的变更集来处理.git用户喜欢rebase.可能会替换mq许多用例.
  9. 搁置:如果你不得不在其他方面工作一段时间,那就是隐藏工作副本变化的地方.
  10. 书签:命名特定分支上的最新提交.类似于git分支机构.


Bil*_*son 9

尚未提及:mercurial_keyring

https://www.mercurial-scm.org/wiki/KeyringExtension

"密钥环扩展使用密钥环库的服务,使用系统特定的密码数据库(Gnome Keyring,KDE KWallet,OSXKeyChain,Win32和命令行的专用解决方案)安全地保存身份验证密码(HTTP/HTTPS和SMTP)."

我使用ssh访问我在GitHub和Bitbucket上的回购,我的密钥短语保存在钥匙串中.此扩展允许Mercurial在需要时获取它.

我也需要:hg-git

http://hg-git.github.com/

Mercurial插件让你使用hg作为客户端拉动和推送git repos.一直使用它.


Rob*_*gar 7

如果你和像Bitbucket这样缓慢的主机一起工作,进步是至关重要的.否则hg push看起来像挂了: