Git

Konfigurirajte strežnik Git s HTTP na CentOS 8

Konfigurirajte strežnik Git s HTTP na CentOS 8
V tem članku vam bom pokazal, kako konfigurirati strežnik Git Smart HTTP na CentOS 8 za zasebno gostovanje vaših Git skladišč. Torej, začnimo.

Namestitev strežnika HTTP Git in Apache:

Najprej posodobite predpomnilnik skladišča paketov CentOS 8 z naslednjim ukazom:

$ sudo dnf makecache

Zdaj namestite Git, strežnik Apache HTTP in orodja Apache z naslednjim ukazom:

$ sudo dnf install git httpd httpd-tools

Zdaj pritisnite Y in nato pritisnite za potrditev namestitve.

Namestiti je treba orodja Git, Apache in potrebna orodja Apache.

Konfiguriranje strežnika Apache HTTP:

V tem razdelku vam bom pokazal, kako konfigurirati strežnik Apache za dostop do repozitorijev Git prek protokola HTTP.

Najprej ustvarite novo konfiguracijsko datoteko / etc / httpd / conf.d / git.conf z naslednjim ukazom:

$ sudo vi / etc / httpd / conf.d / git.conf

Zdaj v konfiguracijsko datoteko dodajte naslednje vrstice / etc / httpd / conf.d / git.conf:


SetEnv GIT_PROJECT_ROOT / var / www / git
SetEnv GIT_HTTP_EXPORT_ALL
DocumentRoot / var / www / git
ScriptAlias ​​/ / usr / libexec / git-core / git-http-backend /
 

Možnosti + ExecCGI -MultiViews + SymLinksIfOwnerMatch
AllowOverride Brez
Zahtevaj vse odobreno


Dav On
Kazala možnosti FollowSymLinks
AllowOverride Brez
Zahtevaj vse odobreno

Končna konfiguracijska datoteka naj bo videti takole. Zdaj shranite konfiguracijsko datoteko.

Zdaj ustvarite GIT_PROJECT_ROOT imenik / var / www / git z naslednjim ukazom:

$ sudo mkdir / var / www / git

Zdaj konfigurirajte SELinux za / var / www / git imenik z naslednjim ukazom:

$ sudo semanage fcontext -m -t httpd_sys_rw_content_t
"/ var / www / git (/.*)?"

Da začnejo spremembe SELinux veljati, zaženite naslednji ukaz:

$ sudo restorecon -Rv / var / www / git

Zdaj znova zaženite storitev strežnika Apache HTTP z naslednjim ukazom:

$ sudo systemctl znova zaženite httpd

Poleg tega dodajte strežniško storitev Apache HTTP strežniku CentOS 8 z naslednjim ukazom:

$ sudo systemctl omogoči httpd

Zdaj dovolite vrata HTTP (80) skozi datotečni zid z naslednjim ukazom:

$ sudo firewall-cmd --add-service = http --permanent

Da bodo spremembe začele veljati, znova naložite požarni zid, kot sledi:

$ sudo firewall-cmd --reload

Pisanje skripta za lažje ustvarjanje HTTP dostopnih repozitorij Git:

Da bi olajšal ustvarjanje HTTP dostopnih repozitorijev Git, sem napisal preprost skript lupine, s katerim prihranite veliko dragocenega časa.

Če želite uporabiti moj skript, na poti ustvarite novo datoteko / usr / sbin / git-crate-repo z naslednjim ukazom:

$ sudo vi / usr / sbin / git-create-repo

Nato v novo ustvarjeno datoteko vnesite naslednje vrstice kod / usr / sbin / git-crate-repo.

#!/ bin / bash
GIT_DIR = "/ var / www / git"
REPO_NAME = 1 USD
mkdir -p "$ GIT_DIR / $ REPO_NAME.git "
cd "$ GIT_DIR / $ REPO_NAME.git "
git init --bare &> / dev / null
dotaknite se git-daemon-export-ok
cp kljuke / po posodobitvi.vzorčne kljuke / po posodobitvi
git config http.prejmi paket res
git config http.uploadpack res
git update-server-info
chown -Rf apache: apache "$ GIT_DIR / $ REPO_NAME.git "
echo "Git repozitorij '$ REPO_NAME' ustvarjen v $ GIT_DIR / $ REPO_NAME.git "

Takole izgleda zadnji skript lupine. Ko končate, shranite datoteko.

Zdaj dodajte izvršljivo dovoljenje skriptu lupine / usr / sbin / git-create-repo z naslednjim ukazom:

$ sudo chmod + x / usr / sbin / git-create-repo

Ustvari HTTP dostopne repozitorije:

Zdaj lahko ustvarite novo shrambo Git, dostopno HTTP (pokličimo jo preskus) z naslednjim ukazom:

$ sudo git-create-repo test

Novo shrambo Git, dostopno HTTP preskus je treba zaboj.

Dostop do skladišč Git s strežnika Git:

Za dostop do skladišč Git, ki ste jih ustvarili na strežniku CentOS 8 Git, potrebujete IP naslov strežnika CentOS 8 Git in ime skladišča Git.

Skrbnik strežnika Git lahko poišče naslov IP strežnika Git z naslednjim ukazom:

$ nmcli

V mojem primeru je naslov IP 192.168.20.129. Za vas bo drugače. Zato ga odslej zamenjajte s svojim.

Ko skrbnik strežnika Git najde naslov IP, ga lahko pošlje uporabnikom / razvijalcem, ki bodo uporabljali repozitoriji Git, ki so gosti na strežniku Git. Nato lahko uporabniki / razvijalci dostopajo do želenih skladišč Git.

Na primer, če bob želi klonirati repozitorij Git preskus s strežnika Git lahko to stori na naslednji način:

$ git klon http: // 192.168.20.129 / test.git

Skladišče Git preskus je treba klonirati s strežnika Git.

Nov imenik preizkus / bi bilo treba ustvariti v trenutnem delovnem imeniku bob.

Zdaj lahko bob vodi do preizkus / imenik, kot sledi:

$ cd test /

Zdaj bob ustvari novo datoteko sporočilo.txt v skladišču Git.

$ echo 'hello from linuxhint' >> message.txt

Bob izvede spremembe.

$ git add .

$ git commit -m 'začetna odobritev'

Bob potrdi, ali so bile spremembe sprejete v repozitorij.

$ git log --oneline

Zdaj bob naloži spremembe na strežnik Git.

$ git push izvor

Še en razvijalec (recimo shovon), ki želi prispevati k preskus Skladišče Git lahko tudi klonira datoteko preskus repozitorij s strežnika Git.

$ git klon http: // 192.168.20.129 / test.git

Shovon se pomakne do preizkus / imenik.

$ cd test /

Shovon najde zavezo, ki jo je naredil bob.

Zdaj shovon spremeni sporočilo.txt datoteko.

$ echo 'shovon je dodal nekaj novih besedil' >> sporočilo.txt

Zavezuje spremembe.

$ git add .

$ git commit -m 'je dodal novo sporočilo'

Shovon potrjuje, ali so bile spremembe sprejete v odlagališče.

$ git log --oneline

Shovon spremembe naloži na strežnik Git.

$ git push izvor

Zdaj bob potegne spremembe s strežnika Git.

$ git pull

Bob najde novo zavezo.

$ git log --oneline

Bob najde spremembe, ki jih je Shovon naredil v sporočilu.txt datoteko.

Tako lahko uporabljate repozitorije Git s strežnika Git HTTP.

Dodajanje avtentikacije uporabnika na strežnik Git:

Če želite dodati avtentikacijo uporabnika v celotna strežniška skladišča Git ali določena skladišča Git, nato preverite članek Konfiguriranje strežnika Git s HTTP v Ubuntu.

Torej, tako konfigurirate Git Smart HTTP Server na CentOS 8 in uporabljate Git repozitorije s strežnika Git. Hvala, ker ste prebrali ta članek.

5 najboljših arkadnih iger za Linux
Dandanes so računalniki resni stroji, ki se uporabljajo za igre na srečo. Če ne boste mogli dobiti novega visokega rezultata, boste vedeli, kaj mislim...
Bitka za Wesnoth 1.13.6 Razvoj izdan
Bitka za Wesnoth 1.13.6, ki je izšel prejšnji mesec, je šesta razvojna izdaja v 1.13.x series in prinaša številne izboljšave, predvsem uporabniški vme...
Kako namestiti League Of Legends na Ubuntu 14.04
Če ste ljubitelj League of Legends, je to priložnost, da preizkusite League of Legends. Upoštevajte, da LOL podpira PlayOnLinux, če uporabljate Linux....