@@ -147,6 +147,45 @@ $backups = $backupClass->getAllBackups();
147147// Restore last backup to this directory.
148148$backupClass->restoreTo( end( $backups ), '/path/to/restore' );
149149
150+ ```
151+ Advanced usage
152+ --------------
153+ 1)Duplicity without Factory
154+ ``` php
155+ use Backup\Binary;
156+ use Backup\FileSystem\Source;
157+ use Backup\Destination\Factory as DesFactory;
158+ use Backup\Tools\Duplicity;
159+ use Backup\FileSystem\Folder;
160+
161+ $binary = new Binary('/usr/bin/duplicity');
162+ $source = new Source('/var/www/example_com');
163+ $destination = DesFactory::create('/var/backups/example_com');
164+
165+ $duplicity = new Duplicity($source,$destination,$binary);
166+
167+ $duplicity->setArchiveDir('/var/www/cache');
168+ $duplicity->setExludedSubDirectories(array('cache', 'logs', 'tmp'));
169+
170+ // check if duplicity is installed.
171+ $duplicity->isInstalled();
172+
173+ // get duplicity version.
174+ $duplicity->getVersion();
175+
176+ // verify backup location.
177+ $duplicity->verify();
178+
179+ // backup if needed.
180+ $duplicity->execute();
181+
182+ // retrieve existing backups.
183+ $backups = $duplicity->getAllBackups();
184+
185+ // restore 1st backup.
186+ $folder = new Folder('/var/www/example_com');
187+ $duplicity->restore($backups[0], $folder);
188+
150189```
151190
152191How to run unit tests
0 commit comments