flamecore / synchronizer-files
Synchronize local and remote filesystems
Fund package maintenance!
Liberapay
Open Collective
Patreon
Ko Fi
paypal.me/secondtruth
Requires
- php: >=5.4
- flamecore/synchronizer: ~0.1
- league/flysystem: ~1.0
- symfony/filesystem: ~2.6
Requires (Dev)
- phpunit/phpunit: 4.5.*
- scrutinizer/ocular: ~1.1
This package is auto-updated.
Last update: 2024-12-05 02:06:24 UTC
README
This library makes it easy to synchronize local and remote filesystems.
FilesSynchronizer was developed as backend for the deployment and testing tool Seabreeze. It is using our self-developed Synchronizer library as foundation.
Getting Started
Include the vendor autoloader and use the classes:
namespace Acme\MyApplication; use FlameCore\Synchronizer\Files\FilesSynchronizer; use FlameCore\Synchronizer\Files\Location\LocalFilesLocation; require 'vendor/autoload.php';
Create your Source
and Target
objects:
$source = new LocalFilesLocation(['dir' => $sourcePath]); $target = new LocalFilesLocation(['dir' => $targetPath]);
Create the FilesSynchronizer
and assign the Source
and the Target
:
$synchronizer = new FilesSynchronizer($source, $target); $synchronizer->observe($observer); // optionally set an EventObserver object
Now start syncing your files:
$synchronizer->synchronize(); $synchronizer->synchronize(false); // Do not preserve obsolete files
Installation
Install via Composer
Install Composer if you don't already have it present on your system.
To install the library, run the following command and you will get the latest development version:
$ php composer.phar require flamecore/synchronizer-files:dev-master
Requirements
- You must have at least PHP version 5.4 installed on your system.
Contributors
If you want to contribute, please see the CONTRIBUTING file first.
Thanks to the contributors:
- Christian Neff (secondtruth)