PushFTP
A PHP script to handle pushing files to an FTP/SFTP from an SVN/Git repository
Install / Use
/learn @GregOriol/PushFTPREADME
WARNING: PushFTP is DEPRECATED in favor of Puscha, which is a major refactoring of this tool. No more changes will be made to this repository. Please switch to Puscha!
PushFTP
A PHP script to handle pushing files to an FTP/SFTP from an SVN/Git repository.
Its main feature is to update a server according to the changes made on the related SCM repository. The script will check the SCM differences since last push and upload the new or changed files to the server.
- Uploads only new/changed files
- Deletes removed files
- Dry run mode to simulate the push
- Logs actions, detected changes and SCM diff for review
- Temp folder used on the server for upload, to prevent disrupting the site during long uploads
- Stores encrypted passwords
- Excludes files that shouldn't be pushed from SCM to server
- Generates a flush list for CDNs
- Updates permissions on pushed files/folder
Best used with CI setups (Jenkins, ...).
Configuration
A pushftp.json file at the root of the project contains all the settings. See samples folder.
Usage
php build/pushftp.phar --help
Tools
Encrypt password
A helper tool is provided to encrypt passwords
php encryptPassword.php --help
Related Skills
node-connect
350.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
350.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
350.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
