Installieren von Git- und Apache -HTTP -Server:
Aktualisieren Sie zunächst den CentOS 8 -Paket -Repository -Cache mit dem folgenden Befehl:
$ sudo dnf makecache
Installieren Sie nun Git, Apache HTTP Server und Apache -Tools mit dem folgenden Befehl:
$ sudo dnf Installieren Sie Git httpd httpd-tools
Jetzt drücken Y und dann drücken Sie Um die Installation zu bestätigen.
Git, Apache und erforderliche Apache -Tools sollten installiert werden.
Konfigurieren von Apache HTTP Server:
In diesem Abschnitt zeige ich Ihnen, wie Sie Apache Server für den Zugriff auf Git -Repositories über das HTTP -Protokoll konfigurieren können.
Erstellen Sie zunächst eine neue Konfigurationsdatei /etc/httpd/conf.D/Git.Conf mit dem folgenden Befehl:
$ sudo vi/etc/httpd/conf.D/Git.Conf
Fügen Sie nun die folgenden Zeilen zur Konfigurationsdatei hinzu /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/
Optionen +execgi -multiviews +symlinkSifownermatch
NichtsRide keine
Alle gewährt
Dav on
Optionsindizes folgt
NichtsRide keine
Alle gewährt
Die endgültige Konfigurationsdatei sollte wie folgt aussehen. Speichern Sie nun die Konfigurationsdatei.
Erstellen Sie nun die Git_project_root Verzeichnis /var/www/git mit dem folgenden Befehl:
$ sudo mkdir/var/www/git
Konfigurieren Sie nun Selinux für die /var/www/git Verzeichnis mit dem folgenden Befehl:
$ sudo semanage fcontext -m -t httpd_sys_rw_content_t
"/var/www/git (/.*)?"
Führen Sie den folgenden Befehl aus, damit die Selinux -Änderungen wirksam werden sollen:
$ sudo restorecon -rv/var/www/git
Starten Sie nun den Apache HTTP Server -Dienst mit dem folgenden Befehl neu:
$ sudo systemctl starten Sie HTTPD neu starten
Fügen Sie außerdem den Apache HTTP -Serverdienst zum CentOS 8 -Systemstart mit dem folgenden Befehl hinzu:
$ sudo systemctl aktivieren httpd
Lassen Sie nun den HTTP -Port (80) mit dem folgenden Befehl durch die Dateiwall zu
$ sudo firewall-cmd --add-service = http --permanent
Laden Sie die Firewall wie folgt nach:
$ sudo firewall-cmd-Reload
Schreiben eines Skripts zum Erstellen von HTTP -zugänglichen Git -Repositories einfacher:
Um das Erstellen von HTTP -zugänglichen Git -Repositories zu vereinfachen, habe ich ein einfaches Shell -Skript geschrieben, mit dem Sie viel Ihrer wertvollen Zeit sparen können.
Wenn Sie mein Skript verwenden möchten, erstellen Sie eine neue Datei im Pfad /usr/sbin/git-crate-repo mit dem folgenden Befehl:
$ sudo vi/usr/sbin/git-create-repo
Geben Sie dann die folgenden Codes -Zeilen in der neu erstellten Datei ein /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 -bar &> /dev /null
Berühren Sie Git-Daemon-Export-OK
CP-Hooks/Post-Update.Probenhaken/Post-Update
GIT -Konfiguration HTTP.empfangenpack true
GIT -Konfiguration HTTP.Uploadpack true
Git Update-Server-Info
Chown -rf Apache: apache "$ git_dir/$ repo_name.Git "
echo "git repository '$ repo_name' erstellt in $ git_dir/$ repo_name.Git "
So sieht das endgültige Shell -Skript aus. Sobald Sie fertig sind, speichern Sie die Datei.
Fügen Sie nun dem Shell -Skript ausführbare Genehmigung hinzu /usr/sbin/git-create-repo mit dem folgenden Befehl:
$ sudo chmod +x/usr/sbin/git-create-repo
Erstellen Sie HTTP -zugängliche Git -Repositories:
Jetzt können Sie ein neues HTTP -zugängliches Git -Repository erstellen (nennen wir es prüfen) mit dem folgenden Befehl:
$ sudo git-create-Repo-Test
Ein neues HTTP -zugänglicher Git -Repository prüfen sollte ingeschickt sein.
Zugriff auf die Git -Repositorys vom Git -Server:
Um auf die Git -Repositories zuzugreifen, die Sie auf Ihrem Centos 8 Git -Server erstellt haben.
Der GIT -Serveradministrator kann die IP -Adresse des Git -Servers mit dem folgenden Befehl finden:
$ nmcli
In meinem Fall ist die IP -Adresse 192.168.20.129. Es wird für Sie anders sein. Stellen Sie also sicher, dass Sie es von nun an durch Ihre ersetzen.
Sobald der Git Server -Administrator die IP -Adresse gefunden hat, kann er sie an Benutzer/Entwickler senden, die Git -Repositories verwenden, die auf dem Git -Server gehostet werden. Dann können die Benutzer/Entwickler auf ihre gewünschten Git -Repositorys zugreifen.
Zum Beispiel wenn Bob will das Git -Repository klonen prüfen Aus dem Git -Server kann er dies wie folgt tun:
$ git klone http: // 192.168.20.129/Test.Git
Das Git -Repository prüfen sollte aus dem Git -Server kloniert werden.
Ein neues Verzeichnis prüfen/ sollte im aktuellen Arbeitsverzeichnis von Bob erstellt werden.
Jetzt kann Bob zum Navigieren zur prüfen/ Verzeichnis wie folgt:
$ cd Test/
Jetzt erstellt Bob eine neue Datei Nachricht.txt im Git -Repository.
$ echo 'Hallo aus LinuxHint' >> Nachricht.txt
Bob begeht die Änderungen.
$ git add .
$ git Commit -m 'Erstes Commit' '
Bob bestätigt, ob die Änderungen am Repository verpflichtet wurden.
$ Git -Protokoll -Einmal
Jetzt lädt Bob die Änderungen am Git -Server hoch.
$ Git Push Origin
Ein anderer Entwickler (sagen wir, sagen wir Shovon) Wer will zum beitragen prüfen Das Git -Repository kann auch das klonen prüfen Repository aus dem Git -Server.
$ git klone http: // 192.168.20.129/Test.Git
Shovon navigiert zur prüfen/ Verzeichnis.
$ cd Test/
Shovon findet das Commit, das Bob gemacht hat.
Jetzt ändert Shovon die Nachricht.TXT -Datei.
$ echo 'Shovon fügte einige neue Texte hinzu' >> Nachricht.txt
Begeht die Änderungen.
$ git add .
$ Git Commit -m 'fügte eine neue Nachricht hinzu.'
Shovon bestätigt, ob die Änderungen am Repository verpflichtet wurden.
$ Git -Protokoll -Einmal
Shovon lädt die Änderungen am Git -Server hoch.
$ Git Push Origin
Jetzt zieht Bob die Änderungen vom Git -Server.
$ git ziehen
Bob findet das neue Commit.
$ Git -Protokoll -Einmal
Bob findet die Änderungen, die Shovon an der Nachricht vorgenommen hat.TXT -Datei.
So können Sie Git -Repositories vom Git HTTP -Server verwenden.
Wenn Sie serverweite Git -Repositories oder bestimmte Git -Repositories zu einer Benutzerauthentifizierung hinzufügen möchten, überprüfen Sie den Artikel Configure Git Server mit HTTP auf Ubuntu.
So konfigurieren Sie Git Smart HTTP -Server auf CentOS 8 und verwenden Git -Repositories aus dem Git -Server. Danke, dass du diesen Artikel gelesen hast.