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.
Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.
Nedlasting (HTTP): https://www.mercurial-scm.org/release/mercurial-6.8.2.tar.gz
Nedlasting MD5 sum: 137ea184109d9e776098390029d554fe
Nedlastingsstørrelse: 7.9 MB
Estimert diskplass som kreves: 80 MB (med dokumenter, legg til 1.5 GB for tester)
Estimert byggetid: 0.3 SBU (med dokumenter, legg til 16 SBU for tester; begge bruker parallellisme=8)
docutils-0.21.2 (nødvendig for å bygge
dokumentasjonen), git-2.47.0, GPGME-1.24.0 (med
Python bindinger), OpenSSH-9.9p1 (kjøretid, for å få tilgang
til ssh://... depoter), Pygments-2.18.0, rustc-1.82.0 (se rust/README.rst
og rust/rhg/README.md
), Subversion-1.14.4
(med Python bindinger), Bazaar, CVS, pyflakes, pyOpenSSL,
og re2
Bygg Mercurial ved å kjøre følgende kommandoer:
make build
For å bygge dokumentasjonen (krever docutils-0.21.2), utsted:
make doc
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 '138,142d' Makefile
For å kjøre testpakken, utsted:
TESTFLAGS="-j<N>
--tmpdir tmp" make check
hvor <N>
er et
heltall mellom én og antall ( prosessor X tråder ), inkludert.
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. To tester er kjent for å mislykkes:
test-duplicateoptions.py og test-profile.t.
For å undersøke eventuelle tilsynelatende mislykkede tester, kan du bruke run-tests.py skriptet. For å se de nesten førti bryterne, 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 --tmpdir tmp test-gpg.t popd
Normalt vil de tidligere feilene være reproduserbare. Imidlertid,
hvis du legger til bryteren --debug
før
--tmpdir
, og kjør testene på nytt, kan
det kan at noen feil forsvinner, noe som er et problem med
testpakken. Hvis dette skjer, vil det ikke være flere av disse
feilene selv om du ikke bruker --debug bryteren igjen.
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.
Installer Mercurial ved å kjøre
følgende kommando (som root
):
make PREFIX=/usr install-bin
Hvis du har laget dokumentasjonen, installer den ved å kjøre
følgende kommando (som root
):
make PREFIX=/usr install-doc
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.
/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.14
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