Mercurial-7.0

Introduksjon til Mercurial

Mercurial er en distribuert kildekontroll styringsverktøy som ligner på Git og Bazaar. Mercurial er skrevet i Python og brukes av prosjekter som Mozilla for Firefox og Thunderbird.

[Notat]

Notat

Utviklingsversjoner av BLFS kan kanskje ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden de siste stabile versjonene av bøkene.

Pakkeinformasjon

  • Nedlasting (HTTP): https://www.mercurial-scm.org/release/mercurial-7.0.tar.gz

  • Nedlasting MD5 sum: 2e65ffe3d37b7ca716de63c01d93d4e4

  • Nedlastingsstørrelse: 8.3 MB

  • Estimert diskplass som kreves: 118 MB (med dokumenter, legg til 58 MB for tester)

  • Estimert byggetid: 0.3 SBU (med dokumenter, legg til 25 SBU for tester; begge bruker parallellisme=4)

Mercurial Avhengigheter

Valgfri

build-1.2.2.post1, docutils-0.21.2 (nødvendig for å bygge dokumentasjonen), git-2.49.0, GPGME-1.24.2 (med Python bindinger), OpenSSH-9.9p2 (kjøretid, for å få tilgang til ssh://... depoter), Pygments-2.19.1, rustc-1.85.1 (se rust/README.rst og rust/rhg/README.md), Subversion-1.14.5 (med Python bindinger), Bazaar, CVS, pyflakes, pyOpenSSL, og re2

Installasjon av Mercurial

Mercurial er bygget og installert i en enkelt kommando som root bruker:

make PREFIX=/usr install

Dokumentasjonen er bygget av kommandoen ovenfor (i man- og html-formater), men bare man sidene er installert. Hvis du ønsker å installere html dokumentasjon, utsted som root bruker:

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

Hvis du ønsker å kjøre testene, må rusttestene fjernes siden de for øyeblikket er ødelagt på grunn av syntaksfeil. For å gjøre dette, utsted:

sed -i '152,155d' Makefile

For å kjøre testpakken, utsted:

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

hvor <N> er et heltall mellom én og antall ( prosessor X tråder ), inkludert (standard er totalt antall prosessorer som returnert av nproc). Tester kan mislykkes fordi noen feilmeldinger har endret seg i Python eller noen avskrivningsadvarsler skrives ut som ikke var til stede da testen ble designet.

For å undersøke eventuelle tilsynelatende mislykkede tester, kan du bruke run-tests.py skriptet i tests mappen. For å se nesten førti brytere, noen av dem veldig nyttige, kjør tests/run-tests.py --help. Når du kjører følgende kommandoer, vil du bare kjøre testene som mislyktes før:

pushd tests  &&
  rm -rf tmp &&
  ./run-tests.py --with-hg /usr/bin/hg test-gpg.t
popd

En interessant bryter er --time, som vil generere en tabell over alle utførte tester og deres respektive start, slutt, bruker, system og sanntid når testene er fullført. Merk at disse brytere kan brukes med make check ved å inkludere dem i TESTFLAGS miljøvariabelen.

Etter installasjonen to veldig raske og enkle tester burde kjøres riktig. Den første trenger litt konfigurasjon:

cat >> ~/.hgrc << "EOF"
[ui]
username = <user_name> <user@mail>
EOF

hvor du må erstatte <user_name> and <your@mail> (mail er valgfritt og kan utelates). Med brukeridentiteten definert, kjør hg debuginstall og flere linjer vil vises, den siste leser "no problems detected". En annen rask og enkel test er bare hg, som skal gi grunnleggende kommandoer som kan brukes med hg.

Konfigurere Mercurial

Konfigurasjonsfiler

/etc/mercurial/hgrc og ~/.hgrc

De aller fleste utvidelser er deaktivert som standard. Kjør hg help extensions hvis du trenger å aktivere noen, f.eks. når man undersøker testfeil. Dette vil sende ut en liste over aktiverte og deaktiverte utvidelser, samt mer informasjon som hvordan aktivere eller deaktivere utvidelser ved hjelp av konfigurasjonsfiler.

Hvis du har installert make-ca-1.15 og ønsker Mercurial å bruke sertifikatene, som root bruker, kjør:

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

Innhold

Installerte Programmer: hg
Installerte Biblioteker: flere interne moduler under /usr/lib/python3.13/site-packages/mercurial
Installerte Mapper: /etc/mercurial, /usr/lib/python3.13/site-packages/hgdemandimport, /usr/lib/python3.13/site-packages/hgext, /usr/lib/python3.13/site-packages/hgext3rd, /usr/lib/python3.13/site-packages/mercurial, og /usr/lib/python3.13/site-packages/mercurial-7.0.dist-info

Korte Beskrivelser

hg

er Mercurial versjonskontrollsystemet