Git- und Apache -Pakete sind im offiziellen Paket -Repository von Ubuntu verfügbar. Sie können es also problemlos mit dem APT -Paketmanager installieren.
Aktualisieren Sie zunächst den APT -Paket -Repository -Cache mit dem folgenden Befehl:
$ sudo APT Update
Der APT -Paket -Repository -Cache sollte aktualisiert werden.
Installieren Sie nun Git und Apache mit dem folgenden Befehl:
$ sudo apt installieren Git apache2 apache2-utils
Jetzt drücken Y und dann drücken Sie Um die Installation zu bestätigen.
Git und Apache sollten installiert werden.
Konfigurieren von Apache HTTP Server für Git:
Aktivieren Sie nun Apache mod_env, mod_cgi, mod_alias Und mod_rewrite Module mit dem folgenden Befehl:
$ sudo a2enmod enc cgi alias umschreiben
Die erforderlichen Apache -Module sollten aktiviert sein.
Erstellen Sie nun ein neues Verzeichnis /var/www/git Damit alle Git -Repositories mit dem folgenden Befehl beibehalten werden:
$ sudo mkdir/var/www/git
Erstellen Sie nun eine neue Apache -Site -Konfiguration /etc/apache2/sites-verfügbare/git.Conf Für GIT mit dem folgenden Befehl:
$ sudo nano/etc/apache2/sites-verfügbare/git.Conf
Geben Sie nun die folgenden Zeilen in die Konfigurationsdatei ein:
Serveradmin webmaster@localhost
SetEnv git_project_root /var/www/git
SetEnv git_http_export_all
Scriptalias/git//usr/lib/git-core/git-http-backend/
Alias /git /var /www /git
Optionen +execgi -multiviews +symlinkSifownermatch
NichtsRide keine
Alle gewährt
DocumentRoot/var/www/html
Optionsindizes folgt den Multiviews
NichtsRide keine
Alle gewährt
Fehlerlog $ apache_log_dir/fehler.Protokoll
Loglevel warnen
CustomLog $ apache_log_dir/Access.log kombiniert
Die endgültige Konfigurationsdatei sieht wie folgt aus. Speichern Sie nun die Konfigurationsdatei durch Drücken + X gefolgt von Y Und .
Deaktivieren Sie nun die Konfiguration der Standard -Apache -Site mit dem folgenden Befehl:
$ sudo a2dissit 000 Default.Conf
Die Standard -Site -Konfiguration sollte deaktiviert werden.
Aktivieren Sie nun die GIT -Site -Konfiguration mit dem folgenden Befehl:
$ sudo a2ensit git.Conf
Die Git -Site -Konfiguration sollte aktiviert sein.
Starten Sie den Apache HTTP -Server nun mit dem folgenden Befehl neu:
$ sudo systemctl starten Sie Apache2 neu
Um ein neues Git -Repository zu starten, das über den Apache HTTP -Server zugegriffen werden kann, müssen Sie einige Befehle ausführen. Sie möchten nicht immer wieder dasselbe tun, nur um ein neues Git -Repository zu erstellen. Also habe ich beschlossen, für diesen Zweck ein Shell -Skript zu schreiben.
Erstellen Sie zunächst ein neues Shell -Skript /usr/local/bin/git-create-repo.Sch mit dem folgenden Befehl:
$ sudo nano/usr/local/bin/git-create-repo.Sch
Geben Sie nun die folgenden Codes -Zeilen im Shell -Skript ein.
#!/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 -bar &> /dev /null
Berühren Sie Git-Daemon-Export-OK
CP-Hooks/Post-Update.Probenhaken/Post-Update
GIT -Konfiguration HTTP.empfangenpack true
Git Update-Server-Info
Chown -rf www-data: www-data "$ git_dir/$ repo_name.Git "
echo "git repository '$ repo_name' erstellt in $ git_dir/$ repo_name.Git "
Sobald Sie diese Zeilen eingeben, sollte das Shell -Skript wie folgt aussehen. Speichern Sie nun die Datei durch Drücken + X gefolgt von Y Und .
Fügen Sie nun mit dem folgenden Befehl die Berechtigung zum Shell -Skript hinzu:
$ sudo chmod +x/usr/local/bin/git-create-repo.Sch
Erstellen Sie nun ein neues Git -Repository prüfen in der Git -Projektwurzel /var/www/git Verwendung der Git-Create-Repo.Sch Shell -Skript wie folgt:
$ sudo git-create-repo.SH -Test
Das Git -Repository prüfen sollte erstellt werden.
Um auf das Git -Repository zuzugreifen, benötigen Sie die IP -Adresse des Git HTTP -Servers.
$ ip a
Wie Sie sehen können, lautet die IP -Adresse in meinem Fall 192.168.21.208. Es wird für Sie anders sein. Ersetzen Sie es von nun an durch Ihre.
Jetzt können Sie die klonen prüfen Git -Repository wie folgt:
$ git klone http: // 192.168.21.208/Git/Test.Git
Das Git -Repository prüfen sollte geklont werden.
Lassen Sie uns nun einen neuen Verpflichtung zum Verpflegung hinzufügen prüfen Git -Repository.
$ cd Test/
$ echo "Hallo Welt"> Hallo
$ git add .
$ git Commit -m 'Erstes Commit' '
Laden Sie nun die Änderungen in die prüfen Git -Repository auf dem Server wie folgt:
$ Git Push Origin
Wie Sie sehen können, werden die Änderungen gut hochgeladen.
Konfigurieren der Benutzerauthentifizierung:
In diesem Abschnitt zeige ich Ihnen, wie Sie die Benutzerauthentifizierung auf den Git -Repositories auf dem Server konfigurieren können.
Bearbeiten Sie zunächst die Git.Conf Site -Konfigurationsdatei wie folgt:
$ sudo nano/etc/apache2/sites-verfügbare/git.Conf
Fügen Sie nun den folgenden Abschnitt in die Konfigurationsdatei hinzu.
AUTHTYPE BASIC
AUTHNAME "GIT -Überprüfung"
AuthuserFile/etc/apache2/git.Passwd
Erfordernder gültiger Benutzer
Hier, /etc/apache2/git.Passwd ist die Benutzerdatenbankdatei.
Die endgültige Konfigurationsdatei sollte wie folgt aussehen. Speichern Sie nun die Datei durch Drücken + X gefolgt von Y Und .
Erstellen Sie nun eine neue Benutzerdatenbankdatei /etc/apache2/git.Passwd und fügen Sie einen neuen Benutzer hinzu (sagen wir, sagen wir Shovon) in die Datenbankdatei wie folgt:
$ sudo htpasswd -c/etc/apache2/git.Passwd Shovon
Geben Sie nun ein neues Passwort für den neuen Benutzer ein und drücken Sie nun .
Geben Sie das gleiche Passwort weiter und drücken Sie .
Das Benutzerpasswortpaar sollte der Datenbank hinzugefügt werden.
Starten Sie den Apache HTTP -Server nun mit dem folgenden Befehl neu:
$ sudo systemctl starten Sie Apache2 neu
Wenn Sie jetzt versuchen, die zu klonen prüfen Repository erneut werden Sie gebeten, sich zu authentifizieren, wie Sie im Screenshot unten sehen können.
Sobald Sie mithilfe des Benutzernamens und des Kennworts authentifiziert sind, können Sie auf das Git -Repository zugreifen.
Selbst wenn Sie versuchen, das Git -Repository zu schieben oder zu ziehen, werden Sie auch nach dem Benutzernamen und dem Passwort gefragt.
Sobald Sie sich authentifizieren, funktioniert Push/Pull.
Sie können auch verschiedene Benutzerdatenbank für verschiedene Git -Repositories festlegen. Dies kann für Projekte nützlich sein, bei denen viele Menschen an demselben Git -Repository zusammenarbeiten.
Um die Git-Repository-Authentifizierung festzulegen, bearbeiten Sie zunächst die Git.Conf Site -Konfigurationsdatei wie folgt:
$ sudo nano/etc/apache2/sites-verfügbare/git.Conf
Fügen Sie nun die folgenden Zeilen in die Konfigurationsdatei hinzu.
AUTHTYPE BASIC
AUTHNAME "GIT -Überprüfung"
AuthuserFile/etc/apache2/git.prüfen.Passwd
Erfordernder gültiger Benutzer
AUTHTYPE BASIC
AUTHNAME "GIT -Überprüfung"
AuthuserFile/etc/apache2/git.Test2.Passwd
Erfordernder gültiger Benutzer
Für jedes Git -Repository prüfen Und Test2, A Abschnitt ist definiert. Für jedes Git -Repository wird eine andere Benutzerdatenbankdatei verwendet.
Die endgültige Konfigurationsdatei sollte wie folgt aussehen. Speichern Sie nun die Konfigurationsdatei durch Drücken + X gefolgt von Y Und .
Jetzt können Sie die erforderlichen Benutzerdatenbanken wie folgt erstellen:
$ sudo htpasswd -c/etc/apache2/git.prüfen.Passwd Benutzername
$ sudo htpasswd -c/etc/apache2/git.Test2.Passwd Benutzername
Sobald Sie fertig sind, starten Sie den Apache HTTP -Server mit dem folgenden Befehl neu:
$ sudo systemctl starten Sie Apache2 neu
Jetzt sollte jedes Git -Repository einen eigenen Benutzer haben, der darauf zugreifen kann.
So konfigurieren Sie Git Server mit Apache HTTP Server auf Ubuntu. Danke, dass du diesen Artikel gelesen hast.