Git

Configurați Git Server cu HTTP pe CentOS 8

Configurați Git Server cu HTTP pe CentOS 8
În acest articol, vă voi arăta cum să configurați serverul Git Smart HTTP pe CentOS 8 pentru găzduirea depozitelor dvs. Git în mod privat. Asadar, haideti sa începem.

Instalarea serverului HTTP Git și Apache:

Mai întâi, actualizați memoria cache a depozitului CentOS 8 cu următoarea comandă:

$ sudo dnf makecache

Acum, instalați Git, serverul Apache HTTP și instrumentele Apache cu următoarea comandă:

$ sudo dnf install git httpd httpd-tools

Acum, apăsați Da și apoi apăsați pentru a confirma instalarea.

Trebuie instalate Git, Apache și instrumentele necesare Apache.

Configurarea serverului Apache HTTP:

În această secțiune, vă voi arăta cum să configurați serverul Apache pentru accesarea depozitelor Git prin protocol HTTP.

Mai întâi, creați un nou fișier de configurare / etc / httpd / conf.d / git.conf cu următoarea comandă:

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

Acum, adăugați următoarele linii în fișierul de configurare / 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 /
 

Opțiuni + ExecCGI -MultiViews + SymLinksIfOwnerMatch
AllowOverride Nici unul
Solicitați toate acordate


Dav On
Opțiuni Indexuri FollowSymLinks
AllowOverride Nici unul
Solicitați toate acordate

Fișierul de configurare final ar trebui să arate după cum urmează. Acum, salvați fișierul de configurare.

Acum, creați fișierul GIT_PROJECT_ROOT director / var / www / git cu următoarea comandă:

$ sudo mkdir / var / www / git

Acum, configurați SELinux pentru / var / www / git director cu următoarea comandă:

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

Pentru ca modificările SELinux să aibă efect, rulați următoarea comandă:

$ sudo restorecon -Rv / var / www / git

Acum, reporniți serviciul serverului Apache HTTP cu următoarea comandă:

$ sudo systemctl reporniți httpd

De asemenea, adăugați serviciul server Apache HTTP la pornirea sistemului CentOS 8 cu următoarea comandă:

$ sudo systemctl activează httpd

Acum, permiteți portul HTTP (80) prin filewall cu următoarea comandă:

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

Pentru ca modificările să aibă efect, reîncărcați firewall-ul după cum urmează:

$ sudo firewall-cmd --reload

Scrierea unui script pentru crearea mai ușoară a depozitelor Git accesibile pentru HTTP:

Pentru a face mai ușoară crearea de depozite Git accesibile HTTP, am scris un script shell simplu pe care îl puteți folosi pentru a economisi o mulțime de timp valoros.

Dacă doriți să utilizați scriptul meu, creați un fișier nou în cale / usr / sbin / git-crate-repo cu următoarea comandă:

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

Apoi introduceți următoarele linii de coduri în fișierul nou creat / usr / sbin / git-crate-repo.

#!/ bin / bash
GIT_DIR = "/ var / www / git"
REPO_NAME = 1 $
mkdir -p "$ GIT_DIR / $ REPO_NAME.git "
cd "$ GIT_DIR / $ REPO_NAME.git "
git init --bare &> / dev / null
atingeți git-daemon-export-ok
cp hooks / post-update.cârlige eșantion / post-actualizare
git config http.primi pachet adevărat
git config http.uploadpack adevărat
git update-server-info
chown -Rf apache: apache "$ GIT_DIR / $ REPO_NAME.git "
ecou „Depozitul Git„ $ REPO_NAME ”creat în $ GIT_DIR / $ REPO_NAME.git "

Așa arată scriptul shell final. După ce ați terminat, salvați fișierul.

Acum, adăugați permisiunea executabilă scriptului shell / usr / sbin / git-create-repo cu următoarea comandă:

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

Creați depozite Git accesibile pentru HTTP:

Acum, puteți crea un nou depozit Git accesibil HTTP (să-l numim Test) cu următoarea comandă:

$ sudo git-create-repo test

Un nou depozit Git accesibil HTTP Test ar trebui să fie îngrădit.

Accesarea depozitelor Git de pe serverul Git:

Pentru a accesa depozitele Git pe care le-ați creat pe serverul dvs. CentOS 8 Git, trebuie să aveți adresa IP a serverului CentOS 8 Git și numele depozitului Git.

Administratorul serverului Git poate găsi adresa IP a serverului Git cu următoarea comandă:

$ nmcli

În cazul meu, adresa IP este 192.168.20.129. Va fi diferit pentru tine. Deci, asigurați-vă că îl înlocuiți cu al dvs. de acum înainte.

Odată ce administratorul serverului Git găsește adresa IP, el / ea o poate trimite utilizatorilor / dezvoltatorilor care vor folosi depozite Git găzduite pe serverul Git. Apoi, utilizatorii / dezvoltatorii pot accesa depozitele Git dorite.

De exemplu, dacă bob vrea să cloneze depozitul Git Test de pe serverul Git, el poate face acest lucru după cum urmează:

$ git clonează http: // 192.168.20.129 / test.git

Depozitul Git Test trebuie clonat de pe serverul Git.

Un nou director Test/ ar trebui să fie creat în directorul de lucru curent al bob.

Acum, bob poate naviga la Test/ director după cum urmează:

$ cd test /

Acum, bob creează un fișier nou mesaj.txt în depozitul Git.

$ echo „salut din linuxhint” >> mesaj.txt

Bob comite modificările.

$ git add .

$ git commit -m 'commit inițial'

Bob confirmă dacă modificările au fost trimise în depozit.

$ git log --oneline

Acum, bob încarcă modificările pe serverul Git.

$ git push origin

Un alt dezvoltator (să spunem shovon) care vrea să contribuie la Test Depozitul Git poate clona și fișierul Test depozit de pe serverul Git.

$ git clonează http: // 192.168.20.129 / test.git

Shovon navighează spre Test/ director.

$ cd test /

Shovon găsește comisia făcută de Bob.

Acum, shovon schimbă mesajul.fișier txt.

$ echo 'shovon a adăugat un mesaj nou >> >> mesaj.txt

Realizează modificările.

$ git add .

$ git commit -m 'a adăugat un mesaj nou'

Shovon confirmă dacă modificările au fost trimise în depozit.

$ git log --oneline

Shovon încarcă modificările pe serverul Git.

$ git push origin

Acum, bob trage modificările de pe serverul Git.

$ git pull

Bob găsește noua comitere.

$ git log --oneline

Bob găsește schimbările pe care Shovon le-a făcut mesajului.fișier txt.

Acesta este modul în care puteți utiliza depozite Git de pe serverul HTTP Git.

Adăugarea autentificării utilizatorului pe serverul Git:

Dacă doriți să adăugați autentificarea utilizatorului la depozite Git la nivel de server sau la depozite Git specifice, verificați articolul Configurare server Git cu HTTP pe Ubuntu.

Deci, așa configurați Git Smart HTTP Server pe CentOS 8 și utilizați depozite Git de pe serverul Git. Vă mulțumim că ați citit acest articol.

Microsoft Sculpt Touch Wireless Mouse Review
I recently read about the Microsoft Sculpt Touch wireless mouse and decided to buy it. After using it for a while, I decided to share my experience wi...
AppyMouse On-screen Trackpad and Mouse Pointer for Windows Tablets
Tablet users often miss the mouse pointer, especially when they are habitual to using the laptops. The touchscreen Smartphones and tablets come with m...
Middle mouse button not working in Windows 10
The middle mouse button helps you scroll through long webpages and screens with a lot of data. If that stops, well you will end up using the keyboard ...