VLT 도구 사용 방법 how-to-use-the-vlt-tool

Jackrabbit FileVault 도구(VLT)는 Apache Foundation에서 개발한 도구로서 Jackrabbit/AEM 인스턴스의 내용을 파일 시스템에 매핑합니다. VLT 도구는 SVN(Subversion) 클라이언트와 같은 소스 제어 시스템 클라이언트와 유사한 기능을 가지며, 일반적인 체크 인, 체크 아웃 및 관리 작업 및 프로젝트 내용을 유연하게 표현하기 위한 구성 옵션을 제공합니다.

명령줄에서 VLT 도구를 실행합니다. 이 문서에서는 시작 및 도움말 방법과 모든 명령 및 사용 가능한 옵션 목록을 포함하여 도구를 사용하는 방법을 설명합니다.

개념 및 아키텍처 concepts-and-architecture

Filevault 도구의 개념과 구조에 대한 자세한 개요는 공식 Apache Jackrabbit Filevault 설명서Filevault 개요Vault FS 페이지를 참조하십시오.

VLT 시작하기 getting-started-with-vlt

VLT 사용을 시작하려면 다음을 수행해야 합니다.

  1. VLT를 설치하고 환경 변수를 업데이트하며 무시된 전역 하위 버전 파일을 업데이트합니다.
  2. AEM 저장소를 설정합니다(아직 설정하지 않은 경우).
  3. AEM 저장소를 체크아웃합니다.
  4. 저장소와 동기화
  5. 동기화가 작동했는지 테스트합니다.

VLT 도구 설치 installing-the-vlt-tool

VLT 도구를 사용하려면 먼저 설치해야 합니다. 추가 도구이므로 기본적으로 설치되지 않습니다. 또한 시스템의 환경 변수를 설정해야 합니다.

  1. Maven 아티팩트 리포지토리에서 FileVault 보관 파일을 다운로드합니다.

    note note
    NOTE
    VLT 도구의 원본은 GitHub에서 사용할 수 있습니다.

    1. 아카이브를 추출합니다.

  2. 명령 파일 vlt 또는 vlt.bat에 적절하게 액세스할 수 있도록 <archive-dir>/vault-cli-<version>/bin을(를) 환경 PATH에 추가하십시오. 예:

    <aem-installation-dir>/crx-quickstart/opt/helpers/vault-cli-3.1.16/bin>

  3. 명령줄 셸을 열고 vlt --help을(를) 실행합니다. 출력이 다음 도움말 화면과 유사한지 확인합니다.

    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
    

설치한 후 무시된 전역 하위 버전 파일을 업데이트해야 합니다. svn 설정을 편집하고 다음을 추가합니다.

[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

줄 끝 문자 구성 configuring-the-end-of-line-character

VLT는 다음 규칙에 따라 EOF(줄 끝)를 자동으로 처리합니다.

  • Windows에서 체크 아웃된 파일 줄이 CRLF(으)로 끝남
  • linux/Unix에서 체크 아웃된 파일 행은 LF(으)로 끝납니다.
  • 저장소에 커밋된 파일 줄이 LF(으)로 끝남

VLT와 SVN 구성이 일치하는지 확인하려면 저장소에 저장된 파일의 확장명에 대해 svn:eol-style 속성을 native(으)로 설정해야 합니다. svn 설정을 편집하고 다음을 추가합니다.

[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

저장소 체크 아웃 checking-out-the-repository

소스 제어 시스템을 사용하여 저장소를 체크아웃합니다. 예를 들어 svn에서 다음을 입력합니다(URI 및 경로를 저장소로 대체).

svn co https://svn.server.com/repos/myproject

저장소와 동기화 synchronizing-with-the-repository

파일을 저장소와 동기화해야 합니다. 이를 위해 진행되는 작업:

  1. 명령줄에서 content/jcr_root(으)로 이동합니다.

  2. 다음을 입력하여 저장소를 체크 아웃합니다(4502 및 관리자 암호로 포트 번호 대체).

    code language-shell
    vlt --credentials admin:admin co --force http://localhost:4502/crx
    
    note note
    NOTE
    초기 체크아웃 시 자격 증명을 한 번만 지정해야 합니다. 그러면 .vault/auth.xml 내의 홈 디렉터리에 저장됩니다.

동기화가 작동했는지 테스트 testing-whether-the-synchronization-worked

저장소를 체크아웃하고 동기화한 후에는 모든 것이 제대로 작동하는지 테스트해야 합니다. .jsp 파일을 편집하여 변경 내용을 커밋한 후 변경 내용이 반영되었는지 확인하는 것이 쉬운 방법입니다.

동기화를 테스트하려면 다음을 수행하십시오.

  1. 다음으로 이동 .../jcr_content/libs/foundation/components/text.
  2. text.jsp에서 항목을 편집합니다.
  3. vlt st을(를) 입력하여 수정된 파일을 확인합니다.
  4. vlt diff text.jsp을(를) 입력하여 변경 내용을 확인합니다.
  5. 변경 내용을 커밋합니다. vlt ci test.jsp.
  6. 텍스트 구성 요소가 포함된 페이지를 다시 로드하고 변경 사항이 있는지 확인합니다.

VLT 도구 도움말 getting-help-with-the-vlt-tool

VLT 도구를 설치한 후 명령줄에서 해당 도움말 파일에 액세스할 수 있습니다.

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
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------

특정 명령에 대한 도움말을 보려면 help 명령 다음에 명령 이름을 입력합니다. 예:

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

VLT에서 수행되는 일반적인 작업 common-tasks-performed-in-vlt

다음은 VLT에서 수행되는 몇 가지 일반적인 작업입니다. 각 명령에 대한 자세한 내용은 개별 명령을 참조하세요.

하위 트리 체크 아웃 checking-out-a-subtree

리포지토리의 하위 트리(예: /apps/geometrixx)만 체크 아웃하려면 다음을 입력합니다.

vlt co http://localhost:4502/crx/-/jcr:root/apps/geometrixx geo

이 작업을 수행하면 META-INFjcr_root 디렉터리가 있는 새 내보내기 루트 geo이(가) 만들어지고 geo/jcr_root/apps/geometrixx 아래에 모든 파일이 저장됩니다.

필터링된 체크아웃 수행 performing-a-filtered-checkout

기존 작업 영역 필터가 있고 이 필터를 체크 아웃에 사용하려면 먼저 META-INF/vault 디렉터리를 만들어 필터를 배치하거나 다음과 같이 명령줄에 지정할 수 있습니다.

$ vlt co --filter filter.xml http://localhost:4502/crx/-/jcr:root geo

예제 필터:

<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
    <filter root="/etc/designs/geometrixx" />
    <filter root="/apps/geometrixx"/>
</workspaceFilter>

.vlt 컨트롤 대신 가져오기/내보내기 사용 using-import-export-instead-of-vlt-control

제어 파일을 사용하지 않고도 JCR 저장소와 로컬 파일 시스템 간에 콘텐츠를 가져오고 내보낼 수 있습니다.

.vlt 컨트롤을 사용하지 않고 콘텐츠를 가져오고 내보내려면 다음을 수행하십시오.

  1. 처음에 저장소 설정:

    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
    
  2. 원격 복제본 변경 및 JCR 업데이트:

    code language-shell
    $ cd /projects/geometrixx
    $ vlt -v import http://localhost:4502/crx . /
    
  3. 원격 복사본을 변경하고 파일 서버를 업데이트합니다.

    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
    

VLT 사용 using-vlt

VLT에서 명령을 실행하려면 명령줄에 다음을 입력합니다.

vlt [options] <command> [arg1 [arg2 [arg3] ..]]

옵션 및 명령은 다음 섹션에서 자세히 설명합니다.

VLT 글로벌 옵션 vlt-global-options

다음은 모든 명령에 사용할 수 있는 VLT 옵션 목록입니다. 사용 가능한 추가 옵션에 대한 자세한 내용은 개별 명령을 참조하십시오.

옵션
설명
-Xjcrlog <arg>
확장 JcrLog 옵션
-Xdavex <arg>
확장 JCR 원격 옵션
--credentials <arg>
사용할 기본 자격 증명
--config <arg>
사용할 JcrFs 구성
-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 한 적게 인쇄
--version
버전 정보를 인쇄하고 VLT를 종료합니다
--log-level <level>
로그 수준(예: log4j 로그 수준)을 나타냅니다.
-h (--help) <command>
특정 명령에 대한 도움말을 인쇄합니다.

VLT 명령 vlt-commands

다음 표에서는 사용 가능한 모든 VLT 명령에 대해 설명합니다. 구문, 사용 가능한 옵션 및 예에 대한 자세한 내용은 개별 명령을 참조하십시오.

명령
축약된 명령
설명
export
JCR 저장소(저장소 파일 시스템)에서 제어 파일이 없는 로컬 파일 시스템으로 내보냅니다.
import
로컬 파일 시스템을 JCR 저장소(저장소 파일 시스템)로 가져옵니다.
checkout
co
Vault 파일 시스템을 체크아웃합니다. 로컬 파일 시스템에 대한 초기 JCR 저장소에 사용합니다. (참고: 먼저 하위 버전에서 저장소를 체크 아웃합니다.)
analyze
패키지 분석.
status
st
작업 복사본 파일 및 디렉터리의 상태를 인쇄합니다.
update
up
저장소에서 작업 복사본으로 변경 사항을 가져옵니다.
info
로컬 파일에 대한 정보를 표시합니다.
commit
ci
작업 복사본에서 변경 내용을 저장소로 보냅니다.
revert
rev
작업 복사 파일을 원래 상태로 복원하고 대부분의 로컬 편집 내용을 취소합니다.
resolved
res
작업 복사 파일 또는 디렉터리에서 충돌하는 상태를 제거합니다.
propget
pg
파일이나 디렉터리에 있는 속성의 값을 인쇄합니다.
proplist
pl
파일 또는 디렉터리의 속성을 인쇄합니다.
propset
ps
파일 또는 디렉터리에서 속성의 값을 설정합니다.
add
파일과 디렉터리를 버전 제어로 지정합니다.
delete
del 또는 rm
버전 제어에서 파일 및 디렉터리를 제거합니다.
diff
di
두 경로 간의 차이점을 표시합니다.
console
대화형 콘솔을 실행합니다.
rcp
한 원격 저장소에서 다른 원격 저장소로 노드 트리를 복사합니다.
sync
자격 증명 모음 동기화 서비스를 제어할 수 있습니다.

내보내기 export

<uri>에 마운트된 자격 증명 모음 파일 시스템을 <local-path>에 있는 로컬 파일 시스템으로 내보냅니다. 하위 트리만 내보내도록 선택적 <jcr-path>를 지정할 수 있습니다.

구문 syntax

export -v|-t <arg>|-p <uri> <jcr-path> <local-path>

옵션 options

-v (--verbose)
자세한 정보 출력
-t (--type) <arg>
내보내기 유형(플랫폼 또는 jar)을 지정합니다.
-p (--prune-missing)
누락된 로컬 파일을 삭제할지 여부를 지정합니다.
<uri>
마운트 지점 uri
<jcrPath>
JCR 경로
<localPath>
로컬 경로

examples

vlt export http://localhost:4502/crx /apps/geometrixx myproject

가져오기 import

로컬 파일 시스템(<local-path>부터 시작)을 자격 증명 모음 파일 시스템(<uri>부터)으로 가져옵니다. <jcr-path>을(를) 가져오기 루트로 지정할 수 있습니다. --sync을(를) 지정하면 가져온 파일이 자동으로 자격 증명 모음 제어에 저장됩니다.

구문 syntax-1

import -v|-s <uri> <local-path> <jcr-path>

옵션 options-1

-v (--verbose)
자세한 정보 출력
-s (-- sync)
로컬 파일을 자격 증명 모음 제어
<uri>
마운트 지점 uri
<jcrPath>
JCR 경로
<localPath>
로컬 경로

examples-1

vlt import http://localhost:4502/crx . /

체크아웃(co) checkout-co

JCR 저장소에서 <uri>로 시작하는 로컬 파일 시스템으로 <local-path>의 로컬 파일 시스템으로 초기 체크 아웃을 수행합니다. <jcrPath> 인수를 추가하여 원격 트리의 하위 디렉토리를 체크 아웃할 수도 있습니다. META-INF 디렉터리에 복사된 Workspace 필터를 지정할 수 있습니다.

구문 syntax-2

checkout --force|-v|-q|-f <file> <uri> <jcrPath> <localPath>

옵션 options-2

--force
로컬 파일이 이미 있는 경우 강제로 체크아웃하여 덮어씁니다.
-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
-f (--filter) <file>
정의되지 않은 경우 자동 필터 지정
<uri>
마운트 지점 uri
<jcrPath>
(선택 사항) 원격 경로
<localPath>
(선택 사항) 로컬 경로

examples-2

JCR 원격 사용:

vlt --credentials admin:admin co http://localhost:8080/crx/server/crx.default/jcr_root/

기본 작업 영역 사용:

vlt --credentials admin:admin co http://localhost:8080/crx/server/-/jcr_root/

URI가 불완전한 경우 확장됩니다.

vlt --credentials admin:admin co http://localhost:8080/crx

분석 analyze

패키지 분석.

구문 syntax-3

analyze -l <format>|-v|-q <localPaths1> [<localPaths2> ...]

옵션 options-3

-l (--linkFormat) <format>
핫픽스 링크(name,id)의 printf 형식(예: `[CQ520_HF_%s
-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
<localPaths> [<localPaths> ...]
로컬 경로

상태 status

작업 복사본 파일 및 디렉터리의 상태를 인쇄합니다.

--show-update을(를) 지정하면 각 파일이 원격 버전에 대해 확인됩니다. 그런 다음 두 번째 문자는 업데이트 작업에서 수행할 작업을 지정합니다.

구문 syntax-4

status -v|-q|-u|-N <file1> [<file2> ...]

옵션 options-4

-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
-u (--show-update)
업데이트 정보 표시
-N (--non-recursive)
단일 디렉터리에서 작동
<file> [<file> ...]
상태를 표시할 파일 또는 디렉터리

업데이트 update

저장소에서 작업 복사본으로 변경 사항을 복사합니다.

구문 syntax-5

update -v|-q|--force|-N <file1> [<file2> ...]

옵션 options-5

-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
--force
로컬 파일을 강제로 덮어씁니다.
-N (--non-recursive)
단일 디렉터리에서 작동
<file> [<file> ...]
업데이트할 파일 또는 디렉터리

정보 info

로컬 파일에 대한 정보를 표시합니다.

구문 syntax-6

info -v|-q|-R <file1> [<file2> ...]

옵션 options-6

-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
-R (--recursive)
순환 작동
<file> [<file> ...]
정보를 표시할 파일 또는 디렉터리

커밋 commit

작업 복사본에서 변경 내용을 저장소로 보냅니다.

구문 syntax-7

commit -v|-q|--force|-N <file1> [<file2> ...]

옵션 options-7

-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
--force
원격 복제본이 수정되더라도 강제로 커밋합니다.
-N (--non-recursive)
단일 디렉터리에서 작동
<file> [<file> ...]
커밋할 파일 또는 디렉터리

되돌리기 revert

작업 복사 파일을 원래 상태로 복원하고 대부분의 로컬 편집 내용을 취소합니다.

구문 syntax-8

revert -q|-R <file1> [<file2> ...]

옵션 options-8

-q (--quiet)
가능한 적게 인쇄합니다.
-R (--recursive)
재귀적으로 하강
<file> [<file> ...]
커밋할 파일 또는 디렉터리

해결됨 resolved

작업 복사본 파일 또는 디렉터리에서 충돌 상태를 제거합니다.

NOTE
이 명령은 충돌을 의미적으로 해결하거나 충돌 마커를 제거하지 않습니다. 충돌 관련 아티팩트 파일을 제거하고 PATH를 다시 커밋할 수 있습니다.

구문 syntax-9

resolved -q|-R|--force <file1> [<file2> ...]

옵션 options-9

-q (--quiet)
가능한 적게 인쇄합니다.
-R (--recursive)
재귀적으로 하강
--force
충돌 마커가 있더라도 해결됩니다.
<file> [<file> ...]
확인할 파일 또는 디렉터리

Propget propget

파일이나 디렉터리에 있는 속성의 값을 인쇄합니다.

구문 syntax-10

propget -q|-R <propname> <file1> [<file2> ...]

옵션 options-10

-q (--quiet)
가능한 적게 인쇄합니다.
-R (--recursive)
재귀적으로 하강
<propname>
속성 이름
<file> [<file> ...]
속성을 가져올 파일 또는 디렉터리

Proplist proplist

파일 또는 디렉터리의 속성을 인쇄합니다.

구문 syntax-11

proplist -q|-R <file1> [<file2> ...]

옵션 options-11

-q (--quiet)
가능한 적게 인쇄합니다.
-R (--recursive)
재귀적으로 하강
<file> [<file> ...]
속성을 나열할 파일 또는 디렉터리

Propset propset

파일 또는 디렉터리에서 속성의 값을 설정합니다.

NOTE
VLT는 다음과 같은 특별 버전 속성을 인식합니다.
vlt:mime-type
파일의 mimetype. 파일을 병합할지 여부를 결정하는 데 사용됩니다. 'text/'로 시작하는 mimetype(또는 없는 mimetype)은 텍스트로 처리됩니다. 다른 모든 항목은 이진법으로 처리됩니다.

구문 syntax-12

propset -q|-R <propname> <propval> <file1> [<file2> ...]

옵션 options-12

-q (--quiet)
가능한 적게 인쇄합니다.
-R (--recursive)
재귀적으로 하강
<propname>
속성 이름
<propval>
속성 값
<file> [<file> ...]
속성을 설정할 파일 또는 디렉터리

추가 add

파일과 디렉터리를 버전 제어로 설정하여 저장소에 추가하도록 예약합니다. 다음 커밋 시 추가됩니다.

구문 syntax-13

add -v|-q|-N|--force <file1> [<file2> ...]

옵션 options-13

-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
-N (--non-recursive)
단일 디렉터리에서 작동
--force
작업을 강제로 실행합니다.
<file> [<file> ...]
추가할 로컬 파일 또는 디렉터리

삭제 delete

버전 제어에서 파일 및 디렉터리를 제거합니다.

구문 syntax-14

delete -v|-q|--force <file1> [<file2> ...]

옵션 options-14

-v (--verbose)
자세한 정보 출력
-q (--quiet)
가능한 적게 인쇄합니다.
--force
작업을 강제로 실행합니다.
<file> [<file> ...]
삭제할 로컬 파일 또는 디렉터리

차이 diff

두 경로 간의 차이점을 표시합니다.

구문 syntax-15

diff -N <file1> [<file2> ...]

옵션 options-15

-N (--non-recursive)
단일 디렉터리에서 작동
<file> [<file> ...]
차이점을 표시할 파일 또는 디렉터리

콘솔 console

대화형 콘솔을 실행합니다.

구문 syntax-16

console -F <file>

옵션 options-16

-F (--console-settings) <file>
콘솔 설정 파일을 지정합니다. 기본 파일은 console.properties입니다.

Rcp rcp

한 원격 저장소에서 다른 원격 저장소로 노드 트리를 복사합니다. <src>은(는) 원본 노드를 가리키고 <dst>은(는) 부모 노드가 있어야 하는 대상 경로를 지정합니다. Rcp는 데이터를 스트리밍하여 노드를 처리합니다.

구문 syntax-17

rcp -q|-r|-b <size>|-t <seconds>|-u|-n|-e <arg1> [<arg2> ...] <src> <dst>

옵션 options-17

-q (--quiet)
가능한 적게 인쇄합니다.
-r (--recursive)
재귀적으로 내림합니다.
-b (--batchSize) <size>
중간 저장 전에 처리할 노드 수입니다.
-t (--throttle) <seconds>
중간 저장 후 대기할 시간(초)입니다.
-u (--update)
기존 노드를 덮어쓰기/삭제합니다.
-n (--newer)
업데이트할 lastModified 속성을 준수합니다.
-e (--exclude) <arg> [<arg> ...]
제외된 소스 경로의 정규 표현식.
<src>
소스 트리의 저장소 주소입니다.
<dst>
대상 노드의 저장소 주소입니다.

examples-3

vlt rcp http://localhost:4502/crx/-/jcr:root/content  https://admin:admin@localhost:4503/crx/-/jcr:root/content_copy
NOTE
<src><dst> 인수 앞에 --exclude 옵션 다음에 다른 옵션이 와야 합니다. 예:
vlt rcp -e ".*\.txt" -r

동기화 sync

자격 증명 모음 동기화 서비스를 제어할 수 있습니다. 인수를 지정하지 않으면 이 명령은 현재 작업 디렉터리를 동기화 제어로 지정합니다. vlt 체크아웃 내에서 실행하는 경우 해당 필터와 호스트를 사용하여 동기화를 구성합니다. vlt 체크 아웃 외부에서 실행하는 경우 디렉터리가 비어 있는 경우에만 동기화를 위해 현재 폴더를 등록합니다.

구문 syntax-18

sync -v|--force|-u <uri> <command> <localPath>

옵션 options-18

-v (--verbose)
자세한 정보 출력.
--force
특정 명령을 강제로 실행합니다.
-u (--uri) <uri>
동기화 호스트의 URI를 지정합니다.
<command>
실행할 동기화 명령입니다.
<localPath>
동기화할 로컬 폴더입니다.

상태 코드 status-codes

VLT에서 사용하는 상태 코드는 다음과 같습니다.

  • ' ' 수정 없음
  • 'A' 추가됨
  • 'C' 충돌
  • 'D' 삭제됨
  • 'I' 무시
  • 'M' 수정됨
  • 'R'이 대체됨
  • '?' 항목이 버전 제어 하에 있지 않습니다.
  • '!' 항목이 없거나(비 svn 명령으로 제거됨) 완료되지 않았습니다.
  • '~' 버전이 지정된 항목이 다른 종류의 일부 항목에 의해 방해됨

FileVault 동기화 설정 setting-up-filevault-sync

저장소 동기화 서비스는 저장소 콘텐츠를 로컬 파일 시스템 표시와 동기화하는 데 사용됩니다. 저장소 변경 내용을 수신하고 파일 시스템 콘텐츠를 정기적으로 검사하는 OSGi 서비스를 설치하면 됩니다. 저장소 컨텐츠를 디스크에 매핑하기 위해 자격 증명 모음과 동일한 serialization 형식을 사용합니다.

NOTE
자격 증명 모음 동기화 서비스는 개발 도구이며 생산적인 시스템에서 사용하지 않는 것이 좋습니다. 또한 이 서비스는 로컬 파일 시스템과만 동기화할 수 있으며 원격 개발에는 사용할 수 없습니다.

vlt를 사용하여 서비스 설치 installing-the-service-using-vlt

자격 증명 모음 동기화 서비스 번들 및 구성을 자동으로 설치하는 데 vlt sync install 명령을 사용할 수 있습니다.

번들이 /libs/crx/vault/install 아래에 설치되고 구성 노드가 /libs/crx/vault/com.day.jcr.sync.impl.VaultSyncServiceImpl에 만들어집니다. 처음에는 서비스를 사용할 수 있지만 동기화 루트가 구성되지 않습니다.

다음 예제에서는 지정된 uri가 액세스할 수 있는 CRX 인스턴스에 동기화 서비스를 설치합니다.

$ vlt --credentials admin:admin sync --uri http://localhost:4502/crx install

서비스 상태 표시 displaying-the-service-status

status 명령을 사용하여 실행 중인 동기화 서비스에 대한 정보를 표시할 수 있습니다. "

$ 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.
NOTE
status 명령은 서비스에서 라이브 데이터를 가져오지 않고 /libs/crx/vault/com.day.jcr.sync.impl.VaultSyncServiceImpl에서 구성을 읽습니다.

동기화 폴더 추가 adding-a-sync-folder

register 명령은 구성에 동기화할 폴더를 추가하는 데 사용됩니다.

$ vlt sync register
Connecting via JCR remoting to http://localhost:4502/crx/server
Added new sync directory: /tmp/workspace/vltsync/jcr_root
NOTE
register 명령은 sync-once 구성을 구성할 때까지 동기화를 트리거하지 않습니다.

동기화 폴더 제거 removing-a-sync-folder

unregister 명령은 구성에서 동기화할 폴더를 제거하는 데 사용됩니다.

$  vlt sync unregister
Connecting via JCR remoting to http://localhost:4502/crx/server
Removed sync directory: /tmp/workspace/vltsync/jcr_root
NOTE
폴더 자체를 삭제하기 전에 동기화 폴더의 등록을 취소해야 합니다.

동기화 구성 configuring-synchronization

서비스 구성 service-configuration

서비스가 실행되면 다음 매개 변수로 구성할 수 있습니다.

  • vault.sync.syncroots: 동기화 루트를 정의하는 하나 이상의 로컬 파일 시스템 경로입니다.

  • vault.sync.fscheckinterval: 파일 시스템에서 변경 내용을 스캔해야 하는 빈도(초)입니다. 기본값은 5초입니다.

  • vault.sync.enabled: 서비스를 활성화/비활성화하는 일반 플래그.

NOTE
웹 콘솔 또는 저장소의 sling:OsgiConfig 노드(이름 com.day.jcr.sync.impl.VaultSyncServiceImpl)로 서비스를 구성할 수 있습니다.
AEM을 사용하여 작업할 때 이러한 서비스에 대한 구성 설정을 관리할 수 있는 방법에는 몇 가지가 있습니다. 자세한 내용은 OSGi 구성을 참조하십시오.

폴더 구성 동기화 sync-folder-configuration

각 동기화 폴더는 구성 및 상태를 다음 세 가지 파일에 저장합니다.

  • .vlt-sync-config.properties: 구성 파일입니다.

  • .vlt-sync.log: 동기화 중에 수행된 작업에 대한 정보가 포함된 로그 파일입니다.

  • .vlt-sync-filter.xml: 동기화되는 저장소의 부분을 정의하는 필터입니다. 이 파일의 형식은 필터링된 체크 아웃 수행 섹션에서 설명합니다.

.vlt-sync-config.properties 파일을 사용하면 다음 속성을 구성할 수 있습니다.

비활성화됨 동기화를 켜거나 끕니다. 기본적으로 이 매개 변수는 동기화를 허용하도록 false로 설정됩니다.

sync-once 비어 있지 않으면 다음 검사에서 지정된 방향으로 폴더를 동기화하면 매개 변수가 지워집니다. 두 가지 값이 지원됩니다.

  • JCR2FS: JCR 저장소의 모든 콘텐츠를 내보내고 로컬 디스크에 씁니다.
  • FS2JCR: 디스크의 모든 콘텐츠를 JCR 저장소로 가져옵니다.

sync-log 로그 파일 이름을 정의합니다. 기본적으로 값은 .vlt-sync.log입니다

개발에 VLT 동기화 사용 using-vlt-sync-for-development

동기화 폴더를 기반으로 개발 환경을 설정하려면 다음과 같이 진행하십시오.

  1. vlt 명령줄로 저장소를 체크아웃합니다.

    code language-shell
    $ vlt --credentials admin:admin co --force http://localhost:4502/crx dev
    
    note note
    NOTE
    필터를 사용하여 적절한 경로만 확인할 수 있습니다. 자세한 내용은 필터링된 체크 아웃 수행 섹션을 참조하십시오.
  2. 작업 사본의 루트 폴더로 이동합니다.

    code language-shell
    $ cd dev/jcr_root/
    
  3. 저장소에 동기화 서비스를 설치합니다.

    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
    
  4. 동기화 서비스 초기화:

    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.
    
  5. .vlt-sync-config.properties 숨김 파일을 편집하고 저장소의 콘텐츠를 동기화하도록 동기화를 구성하십시오.

    code language-xml
    sync-once=JCR2FS
    
    note note
    NOTE
    이 단계에서는 필터 구성에 따라 전체 저장소를 다운로드합니다.
  6. 진행률을 보려면 로그 파일 .vlt-sync.log을(를) 확인하십시오.

    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
    ***
    

이제 로컬 폴더가 저장소와 동기화됩니다. 동기화는 양방향이므로 리포지토리의 수정 사항이 로컬 동기화 폴더에 적용되며 반대로 적용됩니다.

NOTE
VLT 동기화 기능은 간단한 파일과 폴더만 지원하지만 특수 저장소 직렬화된 파일(.content.xml, dialog.xml 등)을 감지하여 자동으로 무시합니다. 따라서 기본 vlt 체크아웃 시 vault 동기화를 사용할 수 있습니다.
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2