如何检查安装的 Mercurial (hg) 是否使用 Python2 或 Python3?

How to check if the installed Mercurial (hg) is using Python2 or Python3?

我想用 python pip 安装 hg-git 扩展,但我不确定我应该使用 pip (Python2) 还是 pip3 (Python3).

hg version 给出这个:

$ hg version
Mercurial Distributed SCM (version 4.8.2)
(see https://mercurial-scm.org for more information)

Copyright (C) 2005-2018 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Enabled extensions:

  fetch     internal
  graphlog  internal
  histedit  internal
  strip     internal
  mq        internal
  purge     internal
  rebase    internal
  record    internal
$

我先试了pip3 install hg-git,安装后没用。然后我使用 pip 并且它起作用了。只是好奇如何首先检查 Mercuial 的 Python 版本。

我是运行 Ubuntu 20.04 并且在我的Mercurial 版本(5.3.1)上它仍在使用Python2,所以我想应该是一样的。您可以通过以下方式查看:

$ head -1 /usr/bin/hg 
#! /usr/bin/python2

如果是类似/usr/bin/python那么你也可以查看它是什么版本:

$ python --version
Python 2.7.18

Mercurial 有一个非常有用的命令,允许您检查和验证安装:

$ hg debuginstall
checking encoding (UTF-8)...
checking Python executable (/usr/local/bin/python3.7)
checking Python implementation (CPython)
checking Python version (3.7.9)
[…]