Vewenden des VLT-Tools how-to-use-the-vlt-tool
Das Jackrabbit FileVault Tool (VLT) ist ein von The Apache Foundation entwickeltes Tool, das den Inhalt einer Jackrabbit/AEM-Instanz Ihrem Dateisystem zuordnet. Das VLT-Tool hat ähnliche Funktionen wie der Quellkontrollsystem-Client (z. B. ein Subversion (SVN)-Client) und bietet normale Eincheck-, Auscheck- und Verwaltungsvorgänge sowie Konfigurationsoptionen für die flexible Darstellung des Projektinhalts.
Sie führen das VLT-Tool über die Befehlszeile aus. In diesem Dokument wird beschrieben, wie Sie das Tool verwenden, einschließlich der ersten Schritte und der Hilfe sowie einer Liste aller Befehle und verfügbaren Optionen.
Konzepte und Architektur concepts-and-architecture
Einen umfassenden Überblick über die Konzepte und die Struktur des Filevault-Tools finden Sie auf der Seite Überblick über Filevault and Vault FS der offiziellen Apache Jackrabbit Filevault-Dokumentation.
Erste Schritte mit dem VLT getting-started-with-vlt
Um das VLT verwenden zu können, müssen Sie folgende Schritte ausführen:
- Installieren Sie das VLT, aktualisieren Sie die Umgebungsvariablen und aktualisieren Sie die global ignorierten Subversion-Dateien.
- Richten Sie das AEM-Repository ein (falls Sie dies nicht bereits getan haben).
- Checken Sie das AEM-Repository aus.
- Synchronisieren Sie mit dem Repository.
- Testen Sie, ob die Synchronisierung funktioniert hat.
Installieren des VLT-Tools installing-the-vlt-tool
Um das VLT-Tool zu verwenden, müssen Sie zunächst das Programm installieren. Es ist nicht standardmäßig installiert, da es sich um ein zusätzliches Tool handelt. Außerdem müssen Sie die Umgebungsvariable Ihres Systems festlegen.
-
Laden Sie die FileVault-Archivdatei aus dem Maven-Artefakt-Repository.
note note NOTE Die Quelle des VLT-Tools ist auf GitHub verfügbar. 1. Entpacken Sie das Archiv.
-
Fügen Sie
<archive-dir>/vault-cli-<version>/bin
in Ihrer UmgebungPATH
hinzu, sodass die Befehlsdateienvlt
odervlt.bat
entsprechend aufgerufen werden können. Beispiel:<aem-installation-dir>/crx-quickstart/opt/helpers/vault-cli-3.1.16/bin>
-
Öffnen Sie eine Befehlszeilen-Shell und führen Sie
vlt --help
aus. Stellen Sie sicher, dass die Ausgabe dem folgenden Hilfebildschirm ähnelt:code language-shell vlt --help ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Jackrabbit FileVault [version 3.1.16] Copyright 2013 by Apache Software Foundation. See LICENSE.txt for more information. ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Usage: vlt [options] <command> [arg1 [arg2 [arg3] ..]] ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Global options: -Xjcrlog <arg> Extended JcrLog options (omit argument for help) -Xdavex <arg> Extended JCR remoting options (omit argument for help) --credentials <arg> The default credentials to use --update-credentials if present the credentials-to-host list is updated in the ~/.vault/auth.xml --config <arg> The JcrFs config to use -v (--verbose) verbose output -q (--quiet) print as little as possible --version print the version information and exit --log-level <level> the log4j log level -h (--help) <command> print this help
Nachdem Sie es installiert haben, müssen Sie global ignorierte Subversion-Dateien aktualisieren. Bearbeiten Sie Ihre SVN-Einstellungen und fügen Sie Folgendes hinzu:
[miscellany]
### Set global-ignores to a set of whitespace-delimited globs
### which Subversion will ignore in its 'status' output, and
### while importing or adding files and directories.
global-ignores = .vlt
Konfigurieren des Zeilenendezeichens configuring-the-end-of-line-character
VLT handhabt Zeilenende (End Of Line - EOF) gemäß der folgenden Regeln automatisch:
- Zeilen von Dateien, die unter Windows überprüft wurden, enden auf
CRLF
- Zeilen von Dateien, die unter Linux/Unix überprüft wurden, enden auf
LF
- Zeilen von Dateien, die an das Repository übergeben werden, enden auf
LF
Um zu gewährleisten, dass VLT- und SVN-Konfiguration übereinstimmen, sollten Sie die Eigenschaft svn:eol-style
für die Erweiterung der im Repository gespeicherten Dateien auf native
festlegen. Bearbeiten Sie Ihre SVN-Einstellungen und fügen Sie Folgendes hinzu:
[auto-props]
*.css = svn:eol-style=native
*.cnd = svn:eol-style=native
*.java = svn:eol-style=native
*.js = svn:eol-style=native
*.json = svn:eol-style=native
*.xjson = svn:eol-style=native
*.jsp = svn:eol-style=native
*.txt = svn:eol-style=native
*.html = svn:eol-style=native
*.xml = svn:eol-style=native
*.properties = svn:eol-style=native
Überprüfen des Repositorys checking-out-the-repository
Überprüfen Sie das Repository mithilfe des Quell-Code-Verwaltungssystems. Im SVN geben Sie beispielsweise Folgendes ein (ersetzen Sie den URI und den Pfad mit Ihrem Repository):
svn co https://svn.server.com/repos/myproject
Synchronisieren mit dem Repository synchronizing-with-the-repository
Sie müssen filevault mit dem Repository synchronisieren. Gehen Sie hierfür wie folgt vor:
-
Klicken Sie in der Befehlszeile
content/jcr_root
. -
Überprüfen Sie das Repository, indem Sie Folgendes eingeben (ersetzen Sie Ihre Port-Nummer durch 4502 und Ihre Admin-Kennwörter):
code language-shell vlt --credentials admin:admin co --force http://localhost:4502/crx
note note NOTE Die Anmeldedaten müssen nur einmal nach dem ersten Auschecken angegeben werden. Sie werden dann im Hauptverzeichnis in .vault/auth.xml
gespeichert.
Es wird geprüft, ob die Synchronisierung funktioniert hat testing-whether-the-synchronization-worked
Nachdem Sie das Repository überprüft und synchronisiert haben, sollten Sie testen, ob alles ordnungsgemäß funktioniert. Eine einfache Möglichkeit, dies zu tun, ist eine .jsp-Datei zu bearbeiten und zu sehen, ob Ihre Änderungen nach Übermittlung der Änderungen übergeben wurden.
So testen Sie die Synchronisierung:
- Navigieren Sie zu
.../jcr_content/libs/foundation/components/text
. - Bearbeiten Sie etwas in
text.jsp
. - Sehen Sie die geänderten Dateien, indem Sie
vlt st
eingeben - Zeigen Sie die Änderungen an, indem Sie
vlt diff text.jsp
eingeben - Übergeben Sie die Änderungen:
vlt ci test.jsp
. - Laden Sie die Seite neu, die eine Textkomponente enthält, und prüfen Sie, ob Ihre Änderungen noch vorhanden sind.
Hilfe mit dem VLT getting-help-with-the-vlt-tool
Wenn Sie das VLT installiert haben, können Sie die Hilfedatei über die Befehlszeile aufrufen:
vlt --help
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Jackrabbit FileVault [version 3.1.16] Copyright 2013 by Apache Software Foundation. See LICENSE.txt for more information.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Usage:
vlt [options] <command> [arg1 [arg2 [arg3] ..]]
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Global options:
-Xjcrlog <arg> Extended JcrLog options (omit argument for help)
-Xdavex <arg> Extended JCR remoting options (omit argument for help)
--credentials <arg> The default credentials to use
--update-credentials if present the credentials-to-host list is updated in the ~/.vault/auth.xml
--config <arg> The JcrFs config to use
-v (--verbose) verbose output
-q (--quiet) print as little as possible
--version print the version information and exit
--log-level <level> the log4j log level
-h (--help) <command> print this help
Commands:
export Export the Vault filesystem
import Import a Vault filesystem
checkout (co) Checkout a Vault file system
status (st) Print the status of working copy files and directories.
update (up) Bring changes from the repository into the working copy.
info Displays information about a local file.
commit (ci) Send changes from your working copy to the repository.
revert (rev) Restore pristine working copy file (undo most local edits).
resolved (res) Remove 'conflicted' state on working copy files or directories.
propget (pg) Print the value of a property on files or directories.
proplist (pl) Print the properties on files or directories.
propset (ps) Set the value of a property on files or directories.
add Put files and directories under version control.
delete (del,rm) Remove files and directories from version control.
diff (di) Display the differences between two paths.
rcp Remote copy of repository content.
sync Control vault sync service
console Run an interactive console
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Um Hilfe für einen bestimmten Befehl zu erhalten, geben Sie den Hilfe-Befehl ein, gefolgt vom Namen des Befehls ein. Beispiel:
vlt --help export
Usage:
export -v|-t <arg>|-p <uri> <jcr-path> <local-path>
Description:
Export the Vault filesystem mounted at <uri> to the local filesystem at <local-path>. An optional <jcr-path> can be specified to export just a sub tree.
Example:
vlt export http://localhost:4502/crx /apps/geometrixx myproject
Options:
-v (--verbose) verbose output
-t (--type) <arg> specifies the export type. either 'platform' or 'jar'.
-p (--prune-missing) specifies if missing local files should be deleted.
<uri> mountpoint uri
<jcr-path> the jcr path
<local-path> the local path
Allgemeine im VLT ausgeführte Aufgaben common-tasks-performed-in-vlt
Die Folgenden finden Sie einige allgemeine Aufgaben, die in VLT ausgeführt werden. Ausführliche Informationen zu den einzelnen Befehlen finden Sie unter den einzelnen Befehlen.
Überprüfen einer Unterstruktur checking-out-a-subtree
Wenn Sie nur eine Unterstruktur des Repositorys überprüfen möchten, wie z. B. /apps/geometrixx
, können Sie dies tun, indem Sie Folgendes eingeben:
vlt co http://localhost:4502/crx/-/jcr:root/apps/geometrixx geo
Dadurch wird ein neuer Exportstamm geo
mit einem META-INF
- und jcr_root
-Verzeichnis erstellt und alle Dateien werden unter /apps/geometrixx
in geo/jcr_root
abgelegt.
Durchführen eines gefilterten Auscheckens performing-a-filtered-checkout
Wenn Sie über einen vorhandenen Arbeitsbereichsfilter verfügen und diesen zum Auschecken verwenden möchten, können Sie entweder zuerst das Verzeichnis META-INF/vault
erstellen und den Filter dort platzieren oder ihn in der Befehlszeile wie folgt angeben:
$ vlt co --filter filter.xml http://localhost:4502/crx/-/jcr:root geo
Ein Beispielfilter:
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/etc/designs/geometrixx" />
<filter root="/apps/geometrixx"/>
</workspaceFilter>
Mit der Import/Exportfunktion statt .vlt-Steuerung using-import-export-instead-of-vlt-control
Sie können Inhalte zwischen einem JCR-Repository und dem lokalen Dateisystem importieren und exportieren, ohne Steuerdateien zu verwenden.
So importieren bzw. exportieren Sie Inhalt ohne die Verwendung der .vlt
-Steuerung:
-
Richten Sie zunächst das Repository ein:
code language-shell $ cd /projects $ svn mkdir https://svn.server.com/repos/myproject $ svn co https://svn.server.com/repos/myproject $ vlt export -v http://localhost:4502/crx /apps/geometrixx geometrixx $ cd geometrixx/ $ svn add META-INF/ jcr_root/ $ svn ci
-
Ändern Sie die Remote-Kopie und aktualisieren Sie JCR:
code language-shell $ cd /projects/geometrixx $ vlt -v import http://localhost:4502/crx . /
-
Ändern Sie die Remote-Kopie und aktualisieren Sie den Dateiserver:
code language-shell $ cd /projects/geometrixx $ vlt export -v http://localhost:4502/crx /apps/geometrixx . $ svn st M META-INF/vault/properties.xml M jcr_root/apps/geometrixx/components/contentpage/.content.xml $ svn ci
Verwenden von VLT using-vlt
Um Befehle in VLT abzusetzen, geben Sie Folgendes in der Befehlszeile ein:
vlt [options] <command> [arg1 [arg2 [arg3] ..]]
Optionen und Befehle werden im Detail in den folgenden Abschnitten beschrieben.
Globale VLT-Optionen vlt-global-options
Im Folgenden finden Sie eine Liste mit VLT-Optionen, die für alle Befehle verfügbar sind. Informationen zu weiteren verfügbaren Optionen finden Sie in den einzelnen Befehlen.
-Xjcrlog <arg>
-Xdavex <arg>
--credentials <arg>
--config <arg>
-v (--verbose)
-q (--quiet)
--version
--log-level <level>
-h (--help) <command>
VLT-Befehle vlt-commands
Die folgende Tabelle beschreibt alle verfügbaren VLT-Befehle. Detaillierte Informationen zu Syntax sowie verfügbaren Optionen und Beispielen finden Sie in den einzelnen Befehlen.
export
import
checkout
co
analyze
status
st
update
up
info
commit
ci
revert
rev
resolved
res
propget
pg
proplist
pl
propset
ps
add
delete
del
oder rm
diff
di
console
rcp
sync
Export export
Exportiert das unter <uri> bereitgestellte Vault-Dateisystem in das lokale Dateisystem unter <local-path>. Ein optionaler <jcr-path> kann angegeben werden, um nur eine Unterstruktur zu exportieren.
Syntax syntax
export -v|-t <arg>|-p <uri> <jcr-path> <local-path>
Optionen options
-v (--verbose)
-t (--type) <arg>
-p (--prune-missing)
<uri>
<jcrPath>
<localPath>
Beispiele examples
vlt export http://localhost:4502/crx /apps/geometrixx myproject
Importieren import
Importiert das lokale Dateisystem (beginnend bei <local-path>
) in das Vault Dateisystem unter <uri>
. Sie können einen <jcr-path>
als Importstamm angeben. Wenn --sync
angegeben wird, werden die importierten Dateien automatisch unter Vault-Kontrolle gestellt.
Syntax syntax-1
import -v|-s <uri> <local-path> <jcr-path>
Optionen options-1
-v (--verbose)
-s (-- sync)
<uri>
<jcrPath>
<localPath>
Beispiele examples-1
vlt import http://localhost:4502/crx . /
Auschecken (co) checkout-co
Führt ein erstes Auschecken von einem JCR-Repository zum lokalen Dateisystem durch, beginnend bei <uri> zum lokalen Dateisystem unter <local-path>. Sie können auch ein <jcrPath>-Argument hinzufügen, um ein Unterverzeichnis der Remote-Struktur zu überprüfen. Es können Arbeitsplatzfilter angegeben werden, die in das Verzeichnis META-INF kopiert werden.
Syntax syntax-2
checkout --force|-v|-q|-f <file> <uri> <jcrPath> <localPath>
Optionen options-2
--force
-v (--verbose)
-q (--quiet)
-f (--filter) <file>
<uri>
<jcrPath>
<localPath>
Beispiele examples-2
Verwenden von JCR-Remoting:
vlt --credentials admin:admin co http://localhost:8080/crx/server/crx.default/jcr_root/
Mit dem Standardarbeitsbereich:
vlt --credentials admin:admin co http://localhost:8080/crx/server/-/jcr_root/
Wenn der URI unvollständig ist, wird er erweitert:
vlt --credentials admin:admin co http://localhost:8080/crx
Analysieren analyze
Analysiert Pakete.
Syntax syntax-3
analyze -l <format>|-v|-q <localPaths1> [<localPaths2> ...]
Optionen options-3
-l (--linkFormat) <format>
-v (--verbose)
-q (--quiet)
<localPaths> [<localPaths> ...]
Status status
Druckt den Status von Arbeitskopiedateien und Verzeichnissen.
Wenn --show-update
angegeben ist, wird jede Datei gegen die Remote-Version geprüft. Der zweite Buchstabe gibt dann an, welche Aktion von einer Aktualisierungsoperation ausgeführt würde.
Syntax syntax-4
status -v|-q|-u|-N <file1> [<file2> ...]
Optionen options-4
-v (--verbose)
-q (--quiet)
-u (--show-update)
-N (--non-recursive)
<file> [<file> ...]
Aktualisieren update
Kopiert Änderungen aus dem Repository in die Arbeitskopie.
Syntax syntax-5
update -v|-q|--force|-N <file1> [<file2> ...]
Optionen options-5
-v (--verbose)
-q (--quiet)
--force
-N (--non-recursive)
<file> [<file> ...]
Info info
Zeigt Informationen über eine lokale Datei an.
Syntax syntax-6
info -v|-q|-R <file1> [<file2> ...]
Optionen options-6
-v (--verbose)
-q (--quiet)
-R (--recursive)
<file> [<file> ...]
Commit commit
Sendet Änderungen von Ihrer Arbeitskopie zum Repository.
Syntax syntax-7
commit -v|-q|--force|-N <file1> [<file2> ...]
Optionen options-7
-v (--verbose)
-q (--quiet)
--force
-N (--non-recursive)
<file> [<file> ...]
Zurück zur letzten Version revert
Stellt die Arbeitskopiedatei in den Originalzustand zurück und macht die meisten lokalen Änderungen rückgängig.
Syntax syntax-8
revert -q|-R <file1> [<file2> ...]
Optionen options-8
-q (--quiet)
-R (--recursive)
<file> [<file> ...]
Gelöst resolved
Entfernt den Konfliktstatus in Arbeitskopie-Dateien oder Verzeichnissen.
Syntax syntax-9
resolved -q|-R|--force <file1> [<file2> ...]
Optionen options-9
-q (--quiet)
-R (--recursive)
--force
<file> [<file> ...]
Propget propget
Druckt den Wert einer Eigenschaft von Dateien oder Verzeichnissen.
Syntax syntax-10
propget -q|-R <propname> <file1> [<file2> ...]
Optionen options-10
-q (--quiet)
-R (--recursive)
<propname>
<file> [<file> ...]
Proplist proplist
Druckt die Eigenschaften von Dateien oder Verzeichnissen.
Syntax syntax-11
proplist -q|-R <file1> [<file2> ...]
Optionen options-11
-q (--quiet)
-R (--recursive)
<file> [<file> ...]
Propset propset
Legt den Wert einer Eigenschaft in Dateien oder Verzeichnissen fest.
vlt:mime-type
Syntax syntax-12
propset -q|-R <propname> <propval> <file1> [<file2> ...]
Optionen options-12
-q (--quiet)
-R (--recursive)
<propname>
<propval>
<file> [<file> ...]
Hinzufügen add
Stellt Dateien und Verzeichnisse unter Versionskontrolle und plant sie für das Hinzufügen zum Repository. Sie werden bei der nächsten Bestätigung hinzugefügt.
Syntax syntax-13
add -v|-q|-N|--force <file1> [<file2> ...]
Optionen options-13
-v (--verbose)
-q (--quiet)
-N (--non-recursive)
--force
<file> [<file> ...]
Löschen delete
Entfernt Dateien und Verzeichnisse aus der Versionskontrolle.
Syntax syntax-14
delete -v|-q|--force <file1> [<file2> ...]
Optionen options-14
-v (--verbose)
-q (--quiet)
--force
<file> [<file> ...]
Diff diff
Zeigt die Unterschiede zwischen zwei Pfaden an.
Syntax syntax-15
diff -N <file1> [<file2> ...]
Optionen options-15
-N (--non-recursive)
<file> [<file> ...]
Konsole console
Führt eine interaktive Konsole aus.
Syntax syntax-16
console -F <file>
Optionen options-16
-F (--console-settings) <file>
Rcp rcp
Kopiert einen Knotenbaum von einem Remote-Repository in ein anderes. <src>
zeigt auf den Quellknoten und <dst>
gibt den Zielpfad an, in dem der übergeordnete Knoten vorhanden sein muss. Rcp verarbeitet die Knoten durch Streaming der Daten.
Syntax syntax-17
rcp -q|-r|-b <size>|-t <seconds>|-u|-n|-e <arg1> [<arg2> ...] <src> <dst>
Optionen options-17
-q (--quiet)
-r (--recursive)
-b (--batchSize) <size>
-t (--throttle) <seconds>
-u (--update)
-n (--newer)
-e (--exclude) <arg> [<arg> ...]
<src>
<dst>
Beispiele examples-3
vlt rcp http://localhost:4502/crx/-/jcr:root/content https://admin:admin@localhost:4503/crx/-/jcr:root/content_copy
<src>
- und <dst>
-Argumenten muss auf die--exclude
-Optionen eine andere Option folgen. Beispiel:vlt rcp -e ".*\.txt" -r
Sync sync
Ermöglicht die Steuerung des Vault-Synchronisierungsdienstes. Dieser Befehl versucht ohne Argumente, das aktuelle Arbeitsverzeichnis unter Sync-Kontrolle zu stellen. Wenn er innerhalb des vlt-Checkouts ausgeführt wird, verwendet er den entsprechenden Filter und den Host, um die Synchronisierung zu konfigurieren. Bei einer Ausführung außerhalb eines vlt-Checkouts wird der aktuelle Ordner nur dann zur Synchronisierung registriert, wenn das Verzeichnis leer ist.
Syntax syntax-18
sync -v|--force|-u <uri> <command> <localPath>
Optionen options-18
-v (--verbose)
--force
-u (--uri) <uri>
<command>
<localPath>
Status-Codes status-codes
Die Status-Codes, die durch VLT verwendet werden, sind:
- „ “ Keine Änderungen
- „A“ hinzugefügt
- „C“ steht in Konflikt
- „D“ gelöscht
- „I“ ignoriert
- „M“ geändert
- „R“ ersetzt
- „?“ Element steht nicht unter Versionskontrolle
- „!“ Das Element fehlt (wird mit dem Befehl non-svn entfernt) oder ist unvollständig
- „~“ versioniertes Element, das durch ein Element anderer Art behindert wird
Einrichten von FileVault-Synchronisierung setting-up-filevault-sync
Der Vault-Synchronisierungsdienst wird zum Synchronisieren des Repository-Inhalts mit einer lokalen Dateisystemdarstellung verwendet, und umgekehrt. Dies wird durch die Installation eines OSGi-Dienstes erreicht, der auf Änderungen des Repositorys wartet und den Inhalt des Dateisystems regelmäßig überprüft. Es verwendet dasselbe Serialisierungsformat wie Vault zum Zuordnen des Repository-Inhalts zur Festplatte.
Dienstinstallation mit dem VLT installing-the-service-using-vlt
Der Befehl vlt sync install
kann verwendet werden, um das Paket und die Konfiguration des Vault-Synchronisierungsdienstes automatisch zu installieren.
Das Bundle wird unter /libs/crx/vault/install
installiert und der config-Knoten wird unter /libs/crx/vault/com.day.jcr.sync.impl.VaultSyncServiceImpl
erstellt. Zunächst ist der Dienst aktiviert, aber es werden keine Synchronisierungsstämme konfiguriert.
Im folgenden Beispiel wird der Synchronisierungsdienst mit der CRX-Instanz installiert, auf die der angegebene URI zugreifen kann.
$ vlt --credentials admin:admin sync --uri http://localhost:4502/crx install
Anzeigen des Dienststatus displaying-the-service-status
Der Befehl status
kann verwendet werden, um Informationen über den aktuellen Synchronisierungsdienst anzuzeigen. ``
$ vlt sync status --uri http://localhost:4502/crx
Connecting via JCR remoting to http://localhost:4502/crx/server
Listing sync status for http://localhost:4502/crx/server/-/jcr:root
- Sync service is enabled.
- No sync directories configured.
status
ruft keine Live-Daten vom Dienst ab, sondern liest die Konfiguration unter /libs/crx/vault/com.day.jcr.sync.impl.VaultSyncServiceImpl
.Hinzufügen eines Synchronisierungsordners adding-a-sync-folder
Der Befehl register
wird verwendet, um einen Ordner zur Synchronisierung mit der Konfiguration hinzuzufügen.
$ vlt sync register
Connecting via JCR remoting to http://localhost:4502/crx/server
Added new sync directory: /tmp/workspace/vltsync/jcr_root
register
löst erst dann eine Synchronisierung aus, wenn Sie die Konfiguration sync-once
konfiguriert haben.Entfernen eines Synchronisierungsordners removing-a-sync-folder
Der Befehl unregister
wird verwendet, um einen zu synchronisierenden Ordner aus der Konfiguration zu entfernen.
$ vlt sync unregister
Connecting via JCR remoting to http://localhost:4502/crx/server
Removed sync directory: /tmp/workspace/vltsync/jcr_root
Konfigurieren der Synchronisierung configuring-synchronization
Dienstkonfiguration service-configuration
Sobald der Dienst ausgeführt wird, kann er mit folgenden Parametern konfiguriert werden:
-
vault.sync.syncroots
: Einer oder mehrere lokale Dateisystempfade, die die Synchronisierungsstämme definieren. -
vault.sync.fscheckinterval
: Häufigkeit (in Sekunden), mit der das Dateisystem auf Änderungen überprüft werden soll. Standard ist 5 Sekunden. -
vault.sync.enabled
: Allgemeine Markierung, die den Dienst aktiviert/deaktiviert.
sling:OsgiConfig
-Knoten (mit dem Namen com.day.jcr.sync.impl.VaultSyncServiceImpl
) im Repository konfiguriert werden.Synchronisierungsordnerkonfiguration sync-folder-configuration
Jeder Synchronisierungsordner speichert Konfiguration und Status in drei Dateien:
-
.vlt-sync-config.properties
: Konfigurationsdatei. -
.vlt-sync.log
: Protokolldatei, die Informationen über die Vorgänge enthält, die beim Synchronisieren durchgeführt werden. -
.vlt-sync-filter.xml
: Filter, die definieren, welche Teile des Repositorys synchronisiert werden. Das Format dieser Datei wird im Abschnitt Durchführen eines gefilterten Auscheckens beschrieben.
Die Datei .vlt-sync-config.properties
ermöglicht es Ihnen, die folgenden Eigenschaften zu konfigurieren:
Deaktiviert Schaltet die Synchronisierung ein oder aus. Standardmäßig ist dieser Parameter auf false gesetzt, um die Synchronisierung zu ermöglichen.
Einmalige Synchronisation Wenn nicht leer, synchronisiert der folgende Scan den Ordner in der angegebenen Richtung und dann wird der Parameter gelöscht. Zwei Werte werden unterstützt:
JCR2FS
: exportiert alle Inhalte im JCR-Repository und schreibt auf die lokale Festplatte.FS2JCR
: Importiert den gesamten Inhalt von der Festplatte in das JCR-Repository.
Synchronisierungsprotokoll Definiert den Dateinamen des Protokolls. Standardmäßig ist der Wert .vlt-sync.log
Verwenden der VLT-Synchronisierung für die Entwicklung using-vlt-sync-for-development
Um eine Entwicklungsumgebung auf Basis eines Synchronisierungsordners einzurichten, gehen Sie wie folgt vor:
-
Checken Sie Ihr Repository mit der vlt-Befehlszeile aus:
code language-shell $ vlt --credentials admin:admin co --force http://localhost:4502/crx dev
note note NOTE Sie können Filter verwenden, um nur die entsprechenden Pfade auszuchecken. Informationen finden Sie im Abschnitt Durchführen eines gefilterten Auscheckens. -
Gehen Sie zum Stammordner Ihrer Arbeitskopie:
code language-shell $ cd dev/jcr_root/
-
Installieren Sie den Synchronisierungsservice auf Ihrem Repository:
code language-xml $ vlt sync install Connecting via JCR remoting to http://localhost:4502/crx/server Preparing to install vault-sync-2.4.24.jar... Updated bundle: vault-sync-2.4.24.jar Created new config at /libs/crx/vault/config/com.day.jcr.sync.impl.VaultSyncServiceImpl
-
Initialisieren Sie den Synchronisierungsservice:
code language-shell $ vlt sync Connecting via JCR remoting to http://localhost:4502/crx/server Starting initialization of sync service in existing vlt checkout /Users/colligno/Applications/cq5/vltsync/sandbox/dev/jcr_root for http://localhost:4502/crx/server/-/jcr:root Added new sync directory: /Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root The directory /Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root is now enabled for syncing. You might perform a 'sync-once' by setting the appropriate flag in the /Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root/.vlt-sync-config.properties file.
-
Bearbeiten Sie die versteckte Datei
.vlt-sync-config.properties
und konfigurieren Sie die Synchronisierung, um den Inhalt Ihres Repository zu synchronisieren:code language-xml sync-once=JCR2FS
note note NOTE Dieser Schritt lädt das gesamte Repository gemäß Ihrer Filterkonfiguration herunter. -
Überprüfen Sie die Protokolldatei
.vlt-sync.log
, um den Fortschritt zu sehen:code language-xml *** 30.04.2017 14:39:10 A file:///Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root/apps/geometrixx-outdoors/src/core/src/main/java/info/geometrixx/outdoors/ 30.04.2017 14:39:10 A file:///Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root/apps/geometrixx-outdoors/src/core/src/main/java/info/geometrixx/outdoors/core/ 30.04.2017 14:39:10 A file:///Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root/apps/geometrixx-outdoors/src/core/src/main/java/info/geometrixx/outdoors/core/product/ 30.04.2017 14:39:10 A file:///Users/trushton/Applications/aem/vltsync/sandbox/dev/jcr_root/apps/geometrixx-outdoors/src/core/src/main/java/info/geometrixx/outdoors/core/product/GeoProduct.java ***
Ihr lokaler Ordner ist jetzt mit dem Repository synchronisiert. Die Synchronisierung erfolgt bidirektional, sodass Änderungen aus dem Repository auf Ihren lokalen Synchronisierungsordner angewendet werden und umgekehrt.