Git

Konfigurálja a Git Server-t HTTP-vel az Ubuntuban

Konfigurálja a Git Server-t HTTP-vel az Ubuntuban
Ha Git HTTP-kiszolgálót szeretne beállítani a Git-adattárakkal való privát munkavégzéshez, akkor ez a cikk az Ön számára készült.  Ebben a cikkben bemutatom, hogyan konfigurálhat egy Git Smart HTTP szervert az Ubuntuban az Apache HTTP szerverrel. Tehát kezdjük.

A Git és az Apache HTTP Server telepítése:

A Git és az Apache csomagok az Ubuntu hivatalos csomagtárában érhetők el. Tehát könnyen telepítheti az APT csomagkezelővel.

Először frissítse az APT csomagtárház gyorsítótárát a következő paranccsal:

$ sudo apt frissítés

Frissíteni kell az APT csomagtárház gyorsítótárát.

Most telepítse a Git és az Apache parancsot a következő paranccsal:

$ sudo apt install git apache2 apache2-utils

Most nyomja meg Y majd nyomja meg a telepítés megerősítéséhez.

A Git és az Apache telepítése szükséges.

Az Apache HTTP Server konfigurálása a Git számára:

Most engedélyezze az Apache alkalmazást mod_env, mod_cgi, mod_alias és mod_rewrite modulok a következő paranccsal:

$ sudo a2enmod env cgi alias rewrite

A szükséges Apache modulokat engedélyezni kell.

Most hozzon létre egy új könyvtárat / var / www / git az összes Git-tár tárolásához a következő paranccsal:

$ sudo mkdir / var / www / git

Most hozzon létre egy új Apache webhelykonfigurációt / etc / apache2 / sites-available / git.konf a Git számára a következő paranccsal:

$ sudo nano / etc / apache2 / sites-available / git.konf

Írja be a következő sorokat a konfigurációs fájlba:


ServerAdmin webmester @ localhost
 
SetEnv GIT_PROJECT_ROOT / var / www / git
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias ​​/ git / / usr / lib / git-core / git-http-backend /
 
Álnév / git / var / www / git
 

Opciók + ExecCGI -MultiViews + SymLinksIfOwnerMatch
Nincs AllowOverride
Minden megköveteltet megkövetel

 
DocumentRoot / var / www / html
 

Opciók Indexek FollowSymLinks MultiViews
Nincs AllowOverride
Minden megköveteltet megkövetel

 
 
ErrorLog $ APACHE_LOG_DIR / hiba.napló
A LogLevel figyelmeztet
CustomLog $ APACHE_LOG_DIR / hozzáférés.rönk együtt

A végleges konfigurációs fájl a következőképpen néz ki. Most mentse el a konfigurációs fájlt a megnyomásával + x utána Y és .

Most tiltsa le az Apache alapértelmezett konfigurációját a következő paranccsal:

$ sudo a2dissite 000-default.konf

Az alapértelmezett webhelykonfigurációt le kell tiltani.

Most engedélyezze a Git webhely konfigurálását a következő paranccsal:

$ sudo a2ensite git.konf

Engedélyezni kell a Git webhely konfigurációját.

Indítsa újra az Apache HTTP szervert a következő paranccsal:

$ sudo systemctl indítsa újra az apache2 fájlt

Az Apache HTTP szerveren keresztül elérhető új Git-tár indításához néhány parancsot kell futtatnia. Nem akarja ugyanazt csinálni újra és újra, csak egy új Git-tár létrehozása érdekében. Tehát úgy döntöttem, hogy írok egy shell szkriptet erre a célra.

Először hozzon létre egy új shell parancsfájlt / usr / local / bin / git-create-repo.SH a következő paranccsal:

$ sudo nano / usr / local / bin / git-create-repo.SH

Most írja be a következő kódsorokat a shell szkriptbe.

#!/ 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 - csupasz &> / dev / null
érintse meg a git-daemon-export-ok gombot
cp horgok / frissítés utáni.minta horgok / frissítés utáni
git config http.Receivepack true
git update-server-info
chown -Rf www-data: www-data "$ GIT_DIR / $ REPO_NAME.git "
"$ REPO_NAME" Git-tároló létrehozva itt: $ GIT_DIR / $ REPO_NAME.git "

Miután beírta ezeket a sorokat, a shell parancsfájlnak a következőképpen kell kinéznie. Most mentse el a fájlt a megnyomásával + x utána Y és .

Most adja hozzá a végrehajtási engedélyt a shell parancsfájlhoz a következő paranccsal:

$ sudo chmod + x / usr / local / bin / git-create-repo.SH

Most hozzon létre egy új Git-tárat teszt a Git projekt gyökerében / var / www / git használni a git-create-repo.SH shell szkript az alábbiak szerint:

$ sudo git-create-repo.sh teszt

A Git tárház teszt létre kell hozni.

A Git-adattár eléréséhez szüksége van a Git HTTP-kiszolgáló IP-címére.

$ ip a

Amint láthatja, az IP-cím esetemben az 192.168.21.208. Neked más lesz. Mostantól cserélje ki a tiédre.

Most klónozhatja a teszt Git tárház az alábbiak szerint:

$ git klón http: // 192.168.21.208 / git / teszt.git

A Git tárház teszt klónozni kell.

Most adjunk hozzá egy új elkötelezettséget a teszt Git tárház.

$ cd teszt /
$ echo "Hello World"> szia
$ git add .
$ git elkötelezettség -m 'kezdeti elkötelezettség'

Most töltse fel a módosításokat a teszt A kiszolgálón tárolja az alábbiakat:

$ git push eredet

Amint láthatja, a módosítások nagyon jól vannak feltöltve.

Felhasználói hitelesítés beállítása:

Ebben a részben bemutatom, hogyan konfigurálhatja a felhasználói hitelesítést a kiszolgáló Git-tárházain.

Először szerkessze a git.konf helykonfigurációs fájl az alábbiak szerint:

$ sudo nano / etc / apache2 / sites-available / git.konf

Most adja hozzá a következő részt a konfigurációs fájlba.


AuthType Basic
AuthName "Git Verification"
AuthUserFile / etc / apache2 / git.passwd
Érvényes felhasználót igényel

Itt, / etc / apache2 / git.passwd a felhasználói adatbázis fájl.

A végső konfigurációs fájlnak a következőképpen kell kinéznie. Most mentse el a fájlt a megnyomásával + x utána Y és .

Most hozzon létre egy új felhasználói adatbázis fájlt / etc / apache2 / git.passwd és adjon hozzá új felhasználót (tegyük fel shovon) az adatbázis fájlba az alábbiak szerint:

$ sudo htpasswd -c / etc / apache2 / git.passwd shovon

Írja be az új felhasználó új jelszavát, majd nyomja meg az gombot .

Írja be újra ugyanazt a jelszót, és nyomja meg a gombot .

A felhasználói jelszó párját hozzá kell adni az adatbázishoz.

Indítsa újra az Apache HTTP szervert a következő paranccsal:

$ sudo systemctl indítsa újra az apache2 fájlt

Most, ha megpróbálja klónozni a teszt Ismét meg kell kérnie a hitelesítést, amint az az alábbi képernyőképen látható.

Miután hitelesítette a felhasználónevet és a jelszót, akkor hozzáférhet a Git adattárhoz.

Még akkor is, amikor megpróbálja lenyomni vagy kihúzni a Git-tárházból, meg kell kérnie a felhasználónevet és a jelszót is.

A hitelesítés után a push / pull működni fog.

Különböző felhasználói adatbázisokat is beállíthat a különböző Git-tárakhoz. Ez hasznos lehet olyan projekteknél, ahol sok ember dolgozik együtt ugyanazon a Git-adattáron.

A Git adattár szerinti hitelesítésének beállításához először módosítsa a git.konf helykonfigurációs fájl az alábbiak szerint:

$ sudo nano / etc / apache2 / sites-available / git.konf

Most adja hozzá a következő sorokat a konfigurációs fájlba.


AuthType Basic
AuthName "Git Verification"
AuthUserFile / etc / apache2 / git.teszt.passwd
Érvényes felhasználót igényel

 

AuthType Basic
AuthName "Git Verification"
AuthUserFile / etc / apache2 / git.teszt2.passwd
Érvényes felhasználót igényel

Minden Git-tárházhoz teszt és teszt2, a szakasz van meghatározva. Minden egyes Git-lerakathoz külön felhasználói adatbázis-fájlt használnak.

A végső konfigurációs fájlnak a következőképpen kell kinéznie. Most mentse el a konfigurációs fájlt a megnyomásával + x utána Y és .

Most a következőképpen hozhatja létre a szükséges felhasználói adatbázisokat:

$ sudo htpasswd -c / etc / apache2 / git.teszt.passwd USERNAME
$ sudo htpasswd -c / etc / apache2 / git.teszt2.passwd USERNAME

Miután végzett, indítsa újra az Apache HTTP szervert a következő paranccsal:

$ sudo systemctl indítsa újra az apache2 fájlt

Most minden Git adattárnak rendelkeznie kell saját felhasználói készlettel, amely hozzáférhet hozzá.

Így konfigurálja a Git Server-t az Apache HTTP Server-rel az Ubuntuban. Köszönjük, hogy elolvasta ezt a cikket.

Microsoft Sculpt Touch vezeték nélküli egér áttekintés
Nemrég olvastam a Microsoft Sculpt Touch vezeték nélküli egér és úgy döntött, hogy megveszi. Egy ideig használat után úgy döntöttem, hogy megosztom ve...
AppyMouse képernyős Trackpad és egérmutató a Windows táblagépekhez
A táblagép-felhasználók gyakran hiányolják az egérmutatót, különösen akkor, ha szokták használni a laptopokat. Az érintőképernyős okostelefonok és táb...
Az egér középső gombja nem működik a Windows 10 rendszerben
A középső egérgomb segít átgörgetni a hosszú weboldalakat és a sok adatot tartalmazó képernyőket. Ha ez leáll, akkor a billentyűzet segítségével görge...