Mercurial-7.2

Introdução ao "Mercurial"

Mercurial é uma ferramenta de gerenciamento distribuído de controle de fonte semelhante ao Git e ao Bazaar. Mercurial é escrita em Python e é usada por projetos como "Mozilla" para "Firefox" e "Thunderbird".

[Nota]

Nota

Esse pacote é conhecido por construir e funcionar adequadamente usando-se uma plataforma LFS 13.0.

Informação do Pacote

  • Transferência (HTTP): https://www.mercurial-scm.org/release/mercurial-7.2.tar.gz

  • Transferência (FTP):

  • Soma de verificação MD5 da transferência: 1b2c2066fcae11baac8341422e1b44c8

  • Tamanho da transferência: 8,8 MB

  • Espaço em disco estimado exigido: 126 MB (com documentos, adicionar 33 MB para testes)

  • Tempo de construção estimado: 0,6 UPC (com documentos; adicionar 24 UPC para testes; ambos usando paralelismo=4)

Dependências do "Mercurial"

Exigidas

setuptools_scm-9.2.2

Opcionais

build-1.4.0, docutils-0.22.4 (exigido para construir a documentação), git-2.53.0, OpenSSH-10.2p1 (tempo de execução, para acessar repositórios ssh://...), Pygments-2.19.2, rustc-1.93.1 (veja-se rust/README.rst e rust/rhg/README.md), Subversion-1.14.5 (com ligações Python), Which-2.23 (usado em um teste), CVS, pyflakes e re2

Instalação do "Mercurial"

Mercurial é construído e instalado em um comando único como o(a) usuário(a) root:

make PREFIX=/usr install

A documentação é construída pelo comando acima (nos formatos man e html), mas somente as páginas de manual são instaladas. Se você desejar instalar a documentação html, emita como o(a) usuário(a) root:

mkdir /usr/share/doc/mercurial-7.2 &&
cp -R doc/html /usr/share/doc/mercurial-7.2

Se você desejar executar os testes, os testes rust precisam ser removidos, pois estão atualmente quebrados devido a erros de sintaxe. Para fazer isso, emita:

sed -i '178,181d' Makefile

Existe também um problema com as permissões no diretório de construção, já que o comando install acima criou arquivos titularizados pelo(a) root, que um teste tenta modificar. Para remediar isso, emita, como o(a) usuário(a) root:

chown -Rv username .

Onde username deveria ser substituído pelo nome de usuário(a) da pessoa que executa os testes. Para executar a suíte de teste, emita:

TESTFLAGS="-j<N> --with-hg /usr/bin/hg" make check

onde <N> é um inteiro entre um e o número de (processador X camadas), inclusive (o padrão é o número total de processadores conforme retornado por nproc). Os testes possivelmente falhem porque algumas mensagens de erro mudaram no Python ou alguns avisos de descontinuação são impressos que não estavam presentes quando o teste foi projetado.

Para a finalidade de investigar quaisquer testes aparentemente falhos, você pode usar o conjunto de comandos sequenciais run-tests.py no diretório tests. Para ver as quase quarenta chaves, algumas delas muito úteis, emita tests/run-tests.py --help. Executando os seguintes comandos, você executará somente os testes que falharam antes:

pushd tests  &&
  ./run-tests.py --with-hg /usr/bin/hg --retest
popd

Uma chave interessante é --time, que gerará uma tabela de todos os testes executados e respectivos tempos de início, fim, usuário(a), sistema e real assim que os testes estiverem completos. Observe que essas chaves possivelmente sejam usadas com make check incluindo-as na variável de ambiente TESTFLAGS.

Depois da instalação, dois testes muito rápidos e simples deveriam executar corretamente. O primeiro precisa de alguma configuração:

cat >> ~/.hgrc << "EOF"
[ui]
username = <nome_usuário(a)> <usuário(a)@correio>
EOF

onde você precisa substituir <nome_usuário(a)> e <usuário(a)@correio-eletrônico> (o correio é opcional e pode ser omitido, porém se o mantiver, você deveria manter também as aspas angulares <>). Com a identidade do(a) usuário(a) definida, execute hg debuginstall e várias linhas serão exibidas, a última dizendo "no problems detected". Outro teste rápido e simples é apenas hg, que deveria gerar comandos básicos que conseguem ser usados com hg.

Configurando o "Mercurial"

Arquivos de Configuração

/etc/mercurial/hgrc e ~/.hgrc

A maioria das extensões está desabilitada por padrão. Execute hg help extensions se precisar habilitar alguma, por exemplo. ao investigar falhas de teste. Isso exibirá uma lista de extensões habilitadas e desabilitadas, bem como mais informações, tais como habilitar ou desabilitar extensões usando arquivos de configuração.

Se você tiver instalado o make-ca-1.16.1 e deseja que o Mercurial use os certificados, [então] como o(a) usuário(a) root, emita:

install -v -d -m755 /etc/mercurial &&
cat > /etc/mercurial/hgrc << "EOF"
[web]
cacerts = /etc/pki/tls/certs/ca-bundle.crt
EOF

Conteúdo

Aplicativos Instalados: hg
Bibliotecas Instaladas: vários módulos internos sob /usr/lib/python3.14/site-packages/mercurial
Diretórios Instalados: /etc/mercurial, /usr/lib/python3.14/site-packages/hgdemandimport, /usr/lib/python3.14/site-packages/hgext, /usr/lib/python3.14/site-packages/hgext3rd, /usr/lib/python3.14/site-packages/mercurial, /usr/lib/python3.14/site-packages/mercurial-7.2.dist-info e /usr/share/doc/mercurial-7.2

Descrições Curtas

hg

é o sistema de controle de versão "mercurial"