Instaliranje Git i Apache HTTP poslužitelja:
Prvo ažurirajte predmemoriju spremišta paketa CentOS 8 sljedećom naredbom:
$ sudo dnf makecache
Sada instalirajte Git, Apache HTTP poslužitelj i Apache alate sa sljedećom naredbom:
$ sudo dnf install git httpd httpd-tools
Sada pritisnite Y a zatim pritisnite
Treba instalirati Git, Apache i potrebne Apache alate.
Konfiguriranje Apache HTTP poslužitelja:
U ovom odjeljku pokazat ću vam kako konfigurirati Apache poslužitelj za pristup Git spremištima putem HTTP protokola.
Prvo stvorite novu konfiguracijsku datoteku / etc / httpd / conf.d / git.konf sa sljedećom naredbom:
$ sudo vi / etc / httpd / conf.d / git.konf
Sada dodajte sljedeće retke u konfiguracijsku datoteku / etc / httpd / conf.d / git.konf:
SetEnv GIT_PROJECT_ROOT / var / www / git
SetEnv GIT_HTTP_EXPORT_ALL
DocumentRoot / var / www / git
ScriptAlias / / usr / libexec / git-core / git-http-backend /
Opcije + ExecCGI -MultiViews + SymLinksIfOwnerMatch
AllowOverride None
Zahtijevaj sve odobreno
Dav On
Indeksi opcija FollowSymLinks
AllowOverride None
Zahtijevaj sve odobreno
Konačna konfiguracijska datoteka trebala bi izgledati kako slijedi. Sada spremite konfiguracijsku datoteku.
Sada stvorite GIT_PROJECT_ROOT imenik / var / www / git sa sljedećom naredbom:
$ sudo mkdir / var / www / git
Sada konfigurirajte SELinux za / var / www / git direktorij sa sljedećom naredbom:
$ sudo semanage fcontext -m -t httpd_sys_rw_content_t"/ var / www / git (/.*)?"
Da bi promjene SELinux-a stupile na snagu, pokrenite sljedeću naredbu:
$ sudo restorecon -Rv / var / www / git
Sada ponovo pokrenite uslugu Apache HTTP poslužitelja sljedećom naredbom:
$ sudo systemctl ponovno pokrenite httpd
Također, dodajte uslugu Apache HTTP poslužitelja u pokretanje sustava CentOS 8 sljedećom naredbom:
$ sudo systemctl omogući httpd
Sada dopustite HTTP priključak (80) kroz zid datoteka sljedećom naredbom:
$ sudo firewall-cmd --add-service = http --permanent
Da bi promjene stupile na snagu, ponovo učitajte vatrozid kako slijedi:
$ sudo firewall-cmd --reload
Lakše pisanje skripte za stvaranje HTTP pristupačnih Git spremišta:
Kako bih olakšao stvaranje HTTP dostupnih Git spremišta, napisao sam jednostavnu skriptu ljuske kojom možete uštedjeti puno dragocjenog vremena.
Ako želite koristiti moju skriptu, stvorite novu datoteku na putu / usr / sbin / git-crate-repo sa sljedećom naredbom:
$ sudo vi / usr / sbin / git-create-repo
Zatim unesite sljedeće retke kodova u novostvorenu datoteku / usr / sbin / git-crate-repo.
#!/ bin / bashGIT_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
dodirnite git-daemon-export-ok
cp kuke / naknadno ažuriranje.uzorci udica / naknadno ažuriranje
git config http.receivepack true
git config http.uploadpack istina
git update-server-info
chown -Rf apache: apache "$ GIT_DIR / $ REPO_NAME".git "
echo "Git spremište '$ REPO_NAME' stvoreno u $ GIT_DIR / $ REPO_NAME.git "
Ovako izgleda završna skripta ljuske. Kad završite, spremite datoteku.
Sada dodajte izvršnu dozvolu u skriptu ljuske / usr / sbin / git-create-repo sa sljedećom naredbom:
$ sudo chmod + x / usr / sbin / git-create-repo
Stvaranje HTTP pristupačnih Git spremišta:
Sada možete stvoriti novo HTTP dostupno Git spremište (nazovimo ga test) sa sljedećom naredbom:
$ sudo git-create-repo test
Novo HTTP dostupno Git spremište test treba biti stavljen u sanduk.
Pristup Git spremištima s Git poslužitelja:
Da biste pristupili Git spremištima koja ste kreirali na CentOS 8 Git poslužitelju, trebate IP adresu CentOS 8 Git poslužitelja i naziv Git spremišta.
Administrator Git poslužitelja može pronaći IP adresu Git poslužitelja pomoću sljedeće naredbe:
$ nmcliU mom slučaju, IP adresa je 192.168.20.129. Za vas će biti drugačije. Pazite da ga od sada zamijenite svojim.
Jednom kada administrator Git poslužitelja pronađe IP adresu, može je poslati korisnicima / programerima koji će koristiti Git spremišta hostirana na Git poslužitelju. Tada korisnici / programeri mogu pristupiti svojim željenim Git spremištima.
Na primjer, ako bob želi klonirati Git spremište test s Git poslužitelja, on to može učiniti kako slijedi:
$ git klon http: // 192.168.20.129 / test.git
Spremište Git test treba klonirati s Git poslužitelja.
Novi direktorij test/ treba stvoriti u trenutnom radnom direktoriju bob.
Sada, bob može doći do test/ direktorij kako slijedi:
$ cd test /
Sada, bob stvara novu datoteku poruka.txt u spremištu Git.
$ echo 'pozdrav iz linuxhint' >> poruke.txt
Bob izvršava promjene.
$ git dodaj .$ git commit -m 'početno predavanje'
Bob potvrđuje jesu li promjene počinjene na spremištu.
$ git log --oneline
Sada, bob prenosi promjene na Git poslužitelj.
$ git push porijeklo
Još jedan programer (recimo šovon) koji želi pridonijeti test Git spremište također može klonirati test spremište s Git poslužitelja.
$ git klon http: // 192.168.20.129 / test.git
Shovon plovi do test/ imenik.
$ cd test /
Shovon pronalazi obvezu koju je napravio bob.
Sada, shovon mijenja poruku.txt datoteku.
$ echo 'shovon dodao je neke nove tekstove' >> poruku.txt
Obavlja promjene.
$ git dodaj .$ git commit -m 'dodao je novu poruku'
Shovon potvrđuje jesu li promjene počinjene na spremištu.
$ git log --oneline
Shovon prenosi promjene na Git poslužitelj.
$ git push porijeklo
Sada, bob povlači promjene s Git poslužitelja.
$ git povuci
Bob pronalazi novi polog.
$ git log --oneline
Bob pronalazi promjene koje je Shovon napravio u poruci.txt datoteku.
Na ovaj način možete koristiti Git spremišta s Git HTTP poslužitelja.
Dodavanje provjere autentičnosti korisnika na Git poslužitelj:
Ako želite dodati autentifikaciju korisnika u Git spremišta za čitav poslužitelj ili određena Git spremišta, tada provjerite članak Konfiguriranje Git poslužitelja s HTTP-om na Ubuntuu.
Dakle, tako konfigurirate Git Smart HTTP poslužitelj na CentOS 8 i koristite Git spremišta s Git poslužitelja. Hvala što ste pročitali ovaj članak.