利用Php ssh2扩展实现svn自动提交到测试服,ssh2svn_PHP教程
利用Php ssh2扩展实现svn自动提交到测试服,ssh2svn
1.安装ssh2扩展
(1)window
<span>1</span><span>. 下载 php extension ssh2 下载地址 http:</span>//windows.php.net/downloads/pecl/releases/ssh2/<span>0.12</span>/<span> 根据自己PHP的版本去下载</span><span>2</span><span>. 解压完后,会有三个文件,libssh2.dll、php_ssh.dll、php_ssh2.pdb。 </span><span>3</span>. 将 php_ssh.dll、php_ssh2.pdb 放到你的 php 扩展目录下 php/ext/<span> 下。 </span><span>4</span>. 将libssh2.dll 复制到 c:/windows/system32 和 c:/windows/<span>syswow64 各一份 </span><span>5</span>. php.ini中加入 extension=<span>php_ssh2.dll </span><span>6</span><span>. 重启服务器,即可使用php执行ssh连接操作了。 查看phpinfo(),是否有显示php_ssh2扩展加载成功。<br /></span>
(2)linux
<span>在linux下需要先安装扩展所需的依赖库 </span><span>1</span><span>.安装libssh2 wget http:</span>//www.libssh2.org/download/libssh2-<span>1.7</span>.<span>0</span><span>.tar.gz tar zxf libssh2</span>-<span>1.7</span>.<span>0</span><span>.tar.gz cd libssh2</span>-<span>1.7</span>.<span>0</span><span> .</span>/configure --prefix=/usr/local/<span>libssh2 make </span>&&<span> make install </span><span>2</span><span>.安装ssh2 wget http:</span>//pecl.php.net/get/ssh2-<span>0.12</span><span>.tgz tar </span>-zxvf ssh2-<span>0.12</span><span>.tgz cd ssh2</span>-<span>0.12</span><span> phpize .</span>/configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/<span>libssh2 make #执行完以上过程后,在当前目录下的modules目录下会生成一个ssh2.so文件,这就是扩展PHP所需要的,将该文件拷贝到PHP库的存储目录下在修改PHP的配置文件即可。 cp modules</span>/ssh2.so /usr/local/php/lib/php/extensions/no-debug-non-zts-<span>20131226</span>/<span> #注:PHP库的存储目录可能不同 vim </span>/usr/local/php/lib/<span>php.ini 添加extension</span>=<span>ssh2.so #重启php php </span>-m |grep ssh #可查看是否安装成功
2.ssh2扩展与svn结合,实现文件文件夹的更新与删除
(1)创建如下目录
file存放源码(第一次需要co代码,之后再改用up)
key存放密钥
log存放错误信息,文件更新删除记录
svn存放相关操作(https://github.com/getCodeWarehouse/php_ssh2)
(2)在svn hooks中开启钩子,调用php脚本
重要的事说三遍 要改权限~ 要改权限~要改权限~

svn up 状态有 U D A,使用array_pop弹出无用数据
更新和新增同为一类,需要判断是文件还是文件夹,选择不同的函数,值得注意的是ssh2_sftp_mkdir,如果远程机存在此文件夹会报错
删除文件夹之所以使用rm命令,因为ssh2_sftp_rmdir不能删除非空文件夹,又不能加参数
(3)测试提交svn
更新文件成功
如果更新速度慢,那就怪网络吧 _(┐「ε:)_
相关代码:https://github.com/getCodeWarehouse/php_ssh2

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Die Versionskontrolle ist ein sehr häufiger Vorgang in der PHP-Entwicklung, und das am häufigsten verwendete Tool ist SVN (Subversion). Es kann problemlos historische Codeversionen und Codeaktualisierungen während der gemeinsamen Entwicklung verwalten. Im Folgenden wird die Verwendung von SVN zur Versionskontrolle in der PHP-Entwicklung vorgestellt. 1. Installieren Sie den SVN-Client und -Server. Zuerst müssen Sie den SVN-Client und -Server installieren. Der SVN-Client kann die entsprechende Version von der offiziellen SVN-Website herunterladen und installieren, während der Server selbst erstellt werden muss. Die spezifische Methode kann sein

Einführung in SVN SVN (Subversion) ist ein zentralisiertes Versionskontrollsystem zur Verwaltung und Pflege von Codebasen. Es ermöglicht mehreren Entwicklern die gleichzeitige Zusammenarbeit bei der Codeentwicklung und bietet eine vollständige Aufzeichnung der historischen Änderungen am Code. Durch die Verwendung von SVN können Entwickler: Codestabilität gewährleisten und Codeverluste und -schäden vermeiden. Verfolgen Sie den Code-Änderungsverlauf und führen Sie problemlos ein Rollback auf frühere Versionen durch. Kollaborative Entwicklung: Mehrere Entwickler ändern den Code gleichzeitig und ohne Konflikte. Grundlegende SVN-Vorgänge Um SVN verwenden zu können, müssen Sie einen SVN-Client installieren, z. B. TortoiseSVN oder SublimeMerge. Anschließend können Sie die folgenden Schritte ausführen, um grundlegende Vorgänge auszuführen: 1. Erstellen Sie die Codebasis svnmkdirHttp://exampl

Ausführliche Erklärung zur Installation und Einrichtung des EclipseSVN-Plug-Ins. Eclipse ist eine weit verbreitete integrierte Entwicklungsumgebung (IDE), die viele verschiedene Plug-Ins zur Erweiterung ihrer Funktionalität unterstützt. Eines davon ist das EclipseSVN-Plugin, das Entwicklern die Interaktion mit dem Versionskontrollsystem Subversion ermöglicht. In diesem Artikel wird detailliert beschrieben, wie Sie das EclipseSVN-Plug-in installieren und einrichten, und es werden spezifische Codebeispiele bereitgestellt. Schritt 1: Installieren Sie das EclipseSVN-Plug-in und öffnen Sie Eclipse

Unterschiede: 1. vss wurde von Microsoft entwickelt und ist kostenpflichtig, während svn Open Source und kostenlos ist. 2. vss muss über einen Client verfügen, während svn den Client, den Befehlszeilenmodus oder den schreibgeschützten Zugriff auf die Webseite verwenden kann. 3. vss unterstützt nur Windows-Systeme, während svn Windows- und Linux-Systeme unterstützt. 4. vss ist ein „Sperren-Bearbeiten-Entsperren“-Modus und svn ist standardmäßig auf einen „Ändern-Konflikt-Zusammenführen“-Modus eingestellt vss entspricht einer einzelnen Datei, und die Versionsnummer von svn entspricht der gesamten Versionsbibliothek.

Die Installation von SVN unter CentOS ist ein leistungsstarkes Versionskontrollsystem, mit dem Änderungen während der Softwareentwicklung verwaltet und verfolgt werden können. In diesem Artikel wird detailliert beschrieben, wie SVN unter CentOS installiert wird, und es werden einige häufig verwendete Befehlszeileninstallationen beschrieben Methode. Es gibt viele Möglichkeiten, SVN unter CentOS zu installieren. Im Folgenden werden zwei gängige Installationsmethoden vorgestellt. 1. Öffnen Sie das Terminal und melden Sie sich als Root-Benutzer an. 2. Führen Sie den folgenden Befehl aus, um die Systempaketliste zu aktualisieren: „yumupdate3“. Führen Sie den folgenden Befehl aus, um SVN zu installieren: yuminstallsubversion4. Nach Abschluss der Installation können Sie überprüfen, ob SVN erfolgreich installiert wurde, indem Sie den folgenden Befehl ausführen: svn - -v

Unter Linux ist es sehr schwierig, den Befehl svndiff direkt zum Anzeigen von Codeänderungen zu verwenden. Daher habe ich im Internet nach einer besseren Lösung gesucht, nämlich die Verwendung von vimdiff als Tool zum Anzeigen von Code für svndiff, insbesondere für diejenigen, die daran gewöhnt sind vim. Es ist sehr praktisch. Wenn Sie den Befehl svndiff zum Vergleichen der Änderungen einer bestimmten Datei verwenden und beispielsweise den folgenden Befehl ausführen: $svndiff-r4420ngx_http_limit_req_module.c, wird der folgende Befehl tatsächlich an das Standard-Diff-Programm gesendet: -u-Lngx_http_limit_req_module.c (revision4420)-Lngx_

Als Linux-Entwickler müssen Sie häufig SVN verwenden, um Projektversionen zu steuern. Für exzellente Entwickler ist das Wissen, wie man SVN-Versionen überprüft, zweifellos eine der wesentlichen Fähigkeiten. Heute möchte ich die Gelegenheit nutzen, meine Erfahrungen mit Ihnen zu teilen, in der Hoffnung, Ihnen dabei zu helfen, diese praktische Fähigkeit besser zu beherrschen. 1. Um das SVN-Befehlszeilentool zu installieren, installieren Sie bitte zuerst das SVN-Befehlszeilentool in der Linux-Umgebung! Bitte wählen Sie das Terminal und geben Sie dann sicher den folgenden Befehl ein, um die Installation abzuschließen: „Lieber Benutzer, bitte führen Sie sudoapt-getinstallsubversion aus, um Subversion zu installieren.“ 2. Verbindung zum SVN-Server herstellen Nachdem die Installation abgeschlossen ist, müssen wir eine Verbindung zum SVN-Server herstellen. Geben Sie den folgenden Befehl ein:

Als häufig verwendete serverseitige Skriptsprache wird PHP aufgrund seiner Open-Source- und plattformübergreifenden Vorteile häufig im Bereich der Webentwicklung eingesetzt. Bei der Entwicklung der Zusammenarbeit mehrerer Personen ist die Versionskontrolle ein unverzichtbares Werkzeug. Sie kann die Änderung und Aktualisierung des Quellcodes effektiv verwalten und Konflikte vermeiden, die durch eine Nichtsynchronisierung des Codes zwischen Teammitgliedern verursacht werden. Als beliebtes Tool zur Versionskontrolle wird SVN auch häufig in der PHP-Entwicklung eingesetzt. Dieser Artikel führt Sie in die Grundkenntnisse der SVN-Versionskontrolle in der PHP-Entwicklung ein, einschließlich der Installation von SVN.
