Introduksjon til Git
Git er en gratis og åpen
kildekode, distribuert versjonskontrollsystem designet for å
håndtere alt fra små til veldig store prosjekter med fart og
effektivitet. Hver Git clone er et
fullverdig depot med fullstendig historikk og full
revisjonssporing, ikke avhengig av nettverkstilgang eller en
sentral server. Forgrening og sammenslåing går raskt og er lett å
gjøre. Git brukes til
versjonskontroll av filer, omtrent som verktøy som f.eks Mercurial-6.8.2, Bazaar, Subversion-1.14.4, CVS, Perforce, og Team
Foundation Server.
Notat
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.
Pakkeinformasjon
-
Nedlasting (HTTP):
https://www.kernel.org/pub/software/scm/git/git-2.47.0.tar.xz
-
Nedlasting MD5 sum: 93b7909a07743edccaaf2732f3e23797
-
Nedlastingsstørrelse: 7.3 MB
-
Estimert diskplass som kreves: 541 MB (med nedlastet
dokumentasjon; legg til 19 MB for å bygge dokumenter; legg
til 21 MB for tester)
-
Estimert byggetid: 0.3 SBU (med parallellitet=4; legg til 1.0
SBU for å bygge dokumenter, og opptil 7 SBU (avhengig av
diskhastighet) for tester)
Ytterligere Nedlastinger
Git Avhengigheter
Anbefalt
cURL-8.11.0 (nødvendig for å bruke Git over http, https, ftp eller ftps)
Valgfri
Apache-2.4.62 (for noen tester), Fcron-3.2.1
(kjøretid, for planlegging av git
maintenance jobber), GnuPG-2.4.6
(kjøretid, kan brukes til å signere Git utførelser eller tagger, eller verifisere
signaturene av dem), OpenSSH-9.9p1 (kjøretid, nødvendig for å
bruke Git over ssh), pcre2-10.44,
Subversion-1.14.4 med Perl bindinger
(kjøretid, for git
svn), Tk-8.6.15 (gitk, en enkel Git arkivvisningsprogram, bruker Tk ved kjøretid), Valgrind-3.24.0,
Authen::SASL og
MIME::Base64 (begge
kjøretid, for git
send-email), IO-Socket-SSL-2.089 (kjøretid, for
git send-email for å
koble til en SMTP server med SSL kryptering),
og Systemd-256.5 (kjøretid, gjenoppbygg med
Linux-PAM-1.7.0, for planlegging av
git maintenance
jobber)
Valgfri (for å lage mansidene, html dokumenter og andre dokumenter)
xmlto-0.0.29 og asciidoc-10.2.1, og også dblatex (for PDF
versjonen av brukerhåndboken), og docbook2x for å lage
infosider
Installasjon av Git
Installer Git ved å kjøre følgende
kommandoer:
./configure --prefix=/usr \
--with-gitconfig=/etc/gitconfig \
--with-python=python3 &&
make
Du kan bygge mansidene og/eller html dokumentene, eller bruke
nedlastede. Hvis du velger å bygge dem, bruk de to neste
instruksjonene.
Hvis du har installert asciidoc-10.2.1 kan du lage html versjonen av
mansidene og andre dokumenter:
make html
Hvis du har installert asciidoc-10.2.1 og xmlto-0.0.29 kan du
lage mansidene:
make man
Testpakken kan kjøres i parallell modus. For å kjøre testpakken,
kjør: make test -k |& tee
test.log. Hvis noen tester mislykkes, kan listen
over mislykkede tester vises via grep
'^not ok' test.log | grep -v TODO.
Nå, som root
bruker:
make perllibdir=/usr/lib/perl5/5.40/site_perl install
Hvis du opprettet mansidene og/eller html dokumentene
Installer mansidene som root
bruker:
make install-man
Installer html dokumentene som root
bruker:
make htmldir=/usr/share/doc/git-2.47.0 install-html
Hvis du lastet ned mansidene og/eller html dokumentene
Hvis du lastet ned mansidene, untar dem som root
bruker:
tar -xf ../git-manpages-2.47.0.tar.xz \
-C /usr/share/man --no-same-owner --no-overwrite-dir
Hvis du lastet ned html dokumentene, untar dem som root
user:
mkdir -vp /usr/share/doc/git-2.47.0 &&
tar -xf ../git-htmldocs-2.47.0.tar.xz \
-C /usr/share/doc/git-2.47.0 --no-same-owner --no-overwrite-dir &&
find /usr/share/doc/git-2.47.0 -type d -exec chmod 755 {} \; &&
find /usr/share/doc/git-2.47.0 -type f -exec chmod 644 {} \;
Omorganiser tekst og html i html dokumentene (begge metodene)
For begge metodene inkluderer html dokumentene mange vanlige
tekstfiler. Omorganiser filene som root
bruker:
mkdir -vp /usr/share/doc/git-2.47.0/man-pages/{html,text} &&
mv /usr/share/doc/git-2.47.0/{git*.txt,man-pages/text} &&
mv /usr/share/doc/git-2.47.0/{git*.,index.,man-pages/}html &&
mkdir -vp /usr/share/doc/git-2.47.0/technical/{html,text} &&
mv /usr/share/doc/git-2.47.0/technical/{*.txt,text} &&
mv /usr/share/doc/git-2.47.0/technical/{*.,}html &&
mkdir -vp /usr/share/doc/git-2.47.0/howto/{html,text} &&
mv /usr/share/doc/git-2.47.0/howto/{*.txt,text} &&
mv /usr/share/doc/git-2.47.0/howto/{*.,}html &&
sed -i '/^<a href=/s|howto/|&html/|' /usr/share/doc/git-2.47.0/howto-index.html &&
sed -i '/^\* link:/s|howto/|&html/|' /usr/share/doc/git-2.47.0/howto-index.txt
Parameterforklaringer
--with-gitconfig=/etc/gitconfig
:
Dette setter /etc/gitconfig
er filen
som lagrer standard innstillinger for Git for hele systemet.
--with-python=python3
: Bruk
denne bryteren for å bruke Python
3, i stedet for EOL Python
2. Python brukes til git
p4 grensesnitt til Perforce repositories, og brukes
også i noen tester.
--with-libpcre2
: Bruk denne bryteren
hvis PCRE2 er installert.
tar -xf ../git-manpages-2.47.0.tar.gz
-C /usr/share/man --no-same-owner: Dette untarer
git-manpages-2.47.0.tar.gz
.
-C
alternativet gjør at tar endrer
mappe til /usr/share/man
før den
begynner å dekomprimere dokumentene. --no-same-owner
alternativet stopper tar fra å
bevare bruker- og gruppedetaljene til filer. Dette er nyttig siden
brukeren eller gruppen kanskje ikke eksisterer på ditt system;
dette kan (potensielt) være en sikkerhetsrisiko.
mv /usr/share/doc/git-2.47.0
...: Disse kommandoene flytter noen av filene til
undermapper for å gjøre det enklere å sortere gjennom dokumentene
og finn det du leter etter.
find ... chmod ...:
Disse kommandoene korrigerer tillatelser i tar-filen for den sendte
dokumentasjonen.