So implementieren Sie die Git-Bereitstellung in PHP: Konfigurieren Sie zuerst Git und setzen Sie sudo passwortfrei. Setzen Sie dann den Hook, und fügen Sie schließlich die ausführbare Hook-Berechtigung hinzu .git/hooks /post-receive].
So implementieren Sie die Git-Bereitstellung in PHP:
Kontobezogen
useradd -m git //新增git账号 ssh-keygen //密钥生成,如果已经有了可略过 su git //切换至git账号 cd ~ //切换到git账号根目录 mkdir .ssh //创建.ssh目录 cat /密钥存放目录/xxx.pub >> ~/.ssh/authorized_keys //设置公钥
Achten Sie hier unbedingt auf Berechtigungsprobleme, da sonst die Schlüsselanmeldung nicht wirksam wird. Die entsprechenden Berechtigungen für jeden Ordner sind wie folgt
.ssh文件夹权限 700 id_rsa 600 id_rsa.pub 644 authorized_keys 600
Dateiberechtigungseinstellungen
Fügen Sie Git und den Benutzer, der Nginx oder Apache auf der Site ausführt, derselben Benutzergruppe hinzu, z. B. www
vim /etc/passwd. Suchen Sie das Git-Konto und das WWW-Konto und ändern Sie die Gruppen-ID von Das Git-Konto muss mit der WWW-Gruppen-ID übereinstimmen
Die Site gehört zu Der Benutzer ist auf Git eingestellt, die Benutzergruppe ist auf www eingestellt //Angenommen, dass Nginx und Git beide zur WWW-Benutzergruppe gehören
Verzeichnisberechtigungen sind auf 775 und die Dateiberechtigungen auf 664 eingestellt Knickhaken Ausführbare Berechtigungen
cd 站点目录 git init //初始化目录
Lokaler Code
git config receive.denyCurrentBranch ignore //设置仓库接受代码提交
Besondere Aufmerksamkeit
Das vom Benutzer hochgeladene Bildverzeichnis muss eine Aktion zum Ignorieren von Dateien ausführen, andernfalls kann dieser Teil der Datei beim Löschen nicht verfolgter Dateien gelöscht werden, was zu katastrophalen Ergebnissen führt
Wenn Sie mehr über das Programmieren erfahren möchten, achten Sie bitte auf die Rubrik „PHP-Schulung“!Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Git-Bereitstellung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!