info EXECUTING PLAN 'inspect_init' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN inspect_init Inspection of internal data after init STEP 1 10/26/26 12:39 Inspecting of internal revision files when putting a local source folder under version control $ arcv -yy --silent [?12l[?25h   info Committed first revision b5aeb90c88972ef9 Inspecting repository revision folder OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/ROOT' line 'riffian-dell/24-5e-be-4d-9c-e1: /home/michel/test-arcv/test-project' was found OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/REV' content is correct ('0') OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive0/CHANGE_LOG' content is correct ('Creation') Inspecting head folder OK: file_A.txt is the same between head folder and revision folder OK: file_B.txt is the same between head folder and revision folder OK: file_A.txt is the same between head folder and original source folder OK: file_B.txt is the same between head folder and original source folder Adding file_C.txt [?12l[?25h  info Committed revision 1 signed 478edea1b2f5d4ec Creating branch fun-project $ av --silent -yy branch fun-project info The branch is going to be created in a folder '../fun-project' from head revision 1 task Branch creation in folder ../fun-project [ RUNNING ] task Branch creation in folder ../fun-project [ OK ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ RUNNING ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ OK ] Inspecting branch revision folder $ Test__assertFileContent "/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun-project.archive/BRANCH_ROOT" "/home/michel/tmp/arcv-test-archive/test-project.archive" OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun-project.archive/BRANCH_ROOT' content is correct ('/home/michel/tmp/arcv-test-archive/test-project.archive') OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun-project.archive/BRANCH_ROOT_REV' content is correct ('1') OK: file_A.txt is the same between head folder and original source folder OK: file_B.txt is the same between head folder and original source folder OK: file_C.txt is the same between head folder and original source folder [?12l[?25h getshot has finished. info EXECUTING PLAN 'spacechars' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN spacechars Wide range of tests dealing with path components containing spaces STEP 1 10/26/26 12:39 Wide range of tests dealing with path components containing spaces .: total 12 -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 file A.txt -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 file B.txt drwxrwxr-x 2 michel michel 4096 Oct 26 12:39 system configs ./system configs: total 8 -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 sys config1.yml -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 sys config3.yml $ arcv -yy --silent [?12l[?25h   info Committed first revision 079410f669044d14 OK: output of 'av rev' is correct OK: 0 returned by 'av check' info SRC: /home/michel/test-arcv/test project of mine info test project of mine is the first archived version info No change in source  info Committed revision 1 signed 9485f5e36b7450f7 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 info Successfully restored VERSION.txt from revison 1 Inspecting repository revision folder OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/ROOT': present OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/REV' content is correct ('1') OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive0/CHANGE_LOG' content is correct ('Creation') Inspecting head folder OK: file A.txt is the same between head folder and revision folder OK: file B.txt is the same between head folder and revision folder OK: sys config1.yml is the same between head folder and revision folder OK: file A.txt is the same between head folder and original source folder OK: file B.txt is the same between head folder and original source folder OK: sys config1.yml is the same between head folder and original source folder Adding file C.txt and system configs/sys config2.yml, modifying system configs/sys config1.yml, removing system configs/sys config3.yml $ rm "system configs/sys config3.yml" [!p[?3;4l> OK: 1 returned by 'av check' $ av check --verbose && _exit -1 "Error: no change detected" || true There are new, deleted, modified files for revision 1 [!p[?3;4l> [?12l[?25h  info Committed revision 2 signed f1888e9528a8b2da OK: output of 'av rev' is correct OK: 0 returned by 'av check' OK: 0 returned by 'av diff 0vs0' OK: 0 returned by 'av diff 2vs2' OK: 0 returned by 'av diff headvs2' $ av tarball -o "/tmp/test av" info Successfully created /tmp/test av/test project of mine-2.tar.gz OK: '/tmp/test av/test project of mine-2.tar.gz': present drwxrwxr-x michel/michel 0 2026-10-26 12:39 test project of mine/ -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/file B.txt drwxrwxr-x michel/michel 0 2026-10-26 12:39 test project of mine/system configs/ -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/system configs/sys config2.yml -rw-rw-r-- michel/michel 24 2026-10-26 12:39 test project of mine/system configs/sys config1.yml -rw-rw-r-- michel/michel 5 2026-10-26 12:39 test project of mine/VERSION.txt -rw-rw-r-- michel/michel 15 2026-10-26 12:39 test project of mine/file C.txt -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/file A.txt $ av tarball 0 -o "/tmp/test av" info Successfully created /tmp/test av/test project of mine-0.tar.gz OK: '/tmp/test av/test project of mine-0.tar.gz': present drwxrwxr-x michel/michel 0 2026-10-26 12:39 test project of mine/ -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/file B.txt drwxrwxr-x michel/michel 0 2026-10-26 12:39 test project of mine/system configs/ -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/system configs/sys config3.yml -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/system configs/sys config1.yml -rw-rw-r-- michel/michel 12 2026-10-26 12:39 test project of mine/file A.txt Perform some info display commands $ av check --verbose || echo "OK NO change detected" Image is up-to-date. Revision is 2 $ av log -n --verbose 2 2026-10-26 12:39:40 Changed: system configs/sys config1.yml. New: file C.txt system configs/sys  config2.yml. Deleted: system configs/sys config3.yml system configs/sys config2.yml system configs/sys config1.yml file C.txt system configs/sys config3.yml 1 2026-10-26 12:39:33 Added /home/michel/test-arcv/test project of mine/VERSION.txt while requesting  creation of release tag VERSION.txt 0 2026-10-26 12:39:31 Creation system configs/sys config1.yml system configs/sys config3.yml file B.txt file A.txt Operation finished. $ av hash --verbose Head hash signature is f1888e9528a8b2dad2dd584dc43d5e4b01a7918a2b1cfd4fdbd047fa75a2fd06 Operation finished. $ av list --verbose info arcv run from riffian-dell, storage on riffian will be accessed via mountpoint /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK riffian 192.168.0.12(LAN) 82.65.58.13(public) fun-project 0 478edea1b2f5d4ec 26 Oct 12:39 michel (1000) 84K   │ test project of mine 2 f1888e9528a8b2da 26 Oct 12:39 michel (1000) 164K   │ 248 KiB [?12l[?25h Operation finished. COMPARING /home/michel/test-arcv/test project of mine with revision 0 : /tmp/Arcv.tmp.Kz70nPhUIj/test project of mine Only in /home/michel/test-arcv/test project of mine: VERSION.txt Only in /home/michel/test-arcv/test project of mine: file C.txt diff --no-dereference -r '--color=always' -u -X '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/EXCLUDE' "/tmp/Arcv.tmp.Kz70nPhUIj/test project of mine/system configs/sys config1.yml" "/home/michel/test-arcv/test project of mine/system configs/sys config1.yml" --- "/tmp/Arcv.tmp.Kz70nPhUIj/test project of mine/system configs/sys config1.yml" 2026-10-26 12:39:29.000000000 +0100 +++ "/home/michel/test-arcv/test project of mine/system configs/sys config1.yml" 2026-10-26 12:39:36.902970570 +0100 @@ -1 +1,2 @@ param1: 100 +param1: 101 Only in /home/michel/test-arcv/test project of mine/system configs: sys config2.yml Only in /tmp/Arcv.tmp.Kz70nPhUIj/test project of mine/system configs: sys config3.yml [!p[?3;4l> OK: 1 returned by 'av diff 0' , is != of 0 Inspecting changes OK: file C.txt is the same between head folder and revision folder OK: sys config2.yml is the same between head folder and revision folder OK: file C.txt is the same between head folder and original source folder OK: sys config2.yml is the same between head folder and original source folder OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive2/test project of mine/system configs/sys config1.yml' last line is correct ('param1: 101') Creating branch 'fun project' $ av --silent -yy branch "fun project" info The branch is going to be created in a folder '../fun project' from head revision 2 task Branch creation in folder ../fun project [ RUNNING ] task Branch creation in folder ../fun project [ OK ] task Branch 'fun project' commit in '/home/michel/test-arcv/fun project' [ RUNNING ] task Branch 'fun project' commit in '/home/michel/test-arcv/fun project' [ OK ] OK: file A.txt is the same between head folder and revision folder OK: file B.txt is the same between head folder and revision folder OK: file C.txt is the same between head folder and revision folder OK: sys config1.yml is the same between head folder and revision folder OK: sys config2.yml is the same between head folder and revision folder OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/fun project.archive0/fun project/system configs/sys config3.yml': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/head/fun project/system configs/sys config3.yml': not there OK: file A.txt is the same between head folder and original source folder OK: file B.txt is the same between head folder and original source folder OK: file C.txt is the same between head folder and original source folder OK: sys config1.yml is the same between head folder and original source folder OK: sys config2.yml is the same between head folder and original source folder Checking out rev 0 in '/tmp/test av' task Revision 0 checkout in folder ../../../../tmp/test av/test project of mine-rev0 [ RUNNING ] task Revision 0 checkout in folder ../../../../tmp/test av/test project of mine-rev0 [ OK ] OK 'file A.txt' content is correct ('Test file A') OK 'file B.txt' content is correct ('Test file B') OK 'system configs/sys config1.yml' content is correct ('param1: 100') OK 'system configs/sys config3.yml' content is correct ('param1: 300') OK: 'file C.txt': not there OK: 'system configs/sys config2.yml': not there Checking out release 1.0.0 in '/tmp/test av' task Release R1.0.0 checkout in folder ../../../../tmp/test av/test project of mine-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder ../../../../tmp/test av/test project of mine-R1.0.0 [ OK ] OK 'file A.txt' content is correct ('Test file A') Checking out revision 1 in '/tmp/' using explicit source name task Revision 1 checkout in folder ../../test project of mine-rev1 [ RUNNING ] task Revision 1 checkout in folder ../../test project of mine-rev1 [ OK ] OK: 'VERSION.txt': present OK: 'system configs/sys config2.yml': not there OK: 'system configs/sys config3.yml': present OK 'file A.txt' content is correct ('Test file A') OK 'system configs/sys config1.yml' last line is correct ('param1: 100') Checking out head in '/tmp/' using explicit source name task Checking out head revision inside '/tmp/test project of mine' [ RUNNING ] task Checking out head revision inside '/tmp/test project of mine' [ OK ] OK: 'VERSION.txt': present OK: 'system configs/sys config2.yml': present OK: 'system configs/sys config3.yml': not there OK 'file A.txt' content is correct ('Test file A') OK 'system configs/sys config1.yml' last line is correct ('param1: 101') [?12l[?25h getshot has finished. info EXECUTING PLAN 'exclusions' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN exclusions Exclude some types of files from revision control and related operations STEP 1 10/26/26 12:39 Example of excluding some types of files from revision control and related operations .: total 16 -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 file A.txt -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 file B.txt drwxrwxr-x 2 michel michel 4096 Oct 26 12:39 system configs -rw-rw-r-- 1 michel michel 17 Oct 26 12:39 videofile.mp4 ./system configs: total 12 -rw-rw-r-- 1 michel michel 27 Oct 26 12:39 screenshot.jpg -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 sys config1.yml -rw-rw-r-- 1 michel michel 12 Oct 26 12:39 sys config3.yml $ arcv -y --silent -X "*.mp4,*.jpg "  info Committed first revision d9da4c44b93f04b6 OK: output of 'av rev' is correct Inspecting repository for non existing excluded files OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/test project of mine/videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/test project of mine/system configs/screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive0/test project of mine/videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive0/test project of mine/system configs/screenshot.jpg': not there OK: 0 returned by 'av check' Adding another_videofile.mp4 and system configs/another_screenshot.jpg and performing a check OK: 0 returned by 'av check' $ av check --verbose Image is up-to-date. Revision is 0 Adding file C.txt and system configs/sys config2.yml, modifying system configs/sys config1.yml, removing system configs/sys config3.yml $ rm "system configs/sys config3.yml" [!p[?3;4l> OK: 1 returned by 'av check' $ av check --verbose || true # just for display There are new, deleted, modified files for revision 0 [!p[?3;4l> [?12l[?25h  info Committed revision 1 signed 5adc03cd9261092f OK: 0 returned by 'av check' OK: output of 'av rev' is correct OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/test project of mine/videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/test project of mine/system configs/screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive2/test project of mine/videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive2/test project of mine/system configs/screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/test project of mine/another_videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/head/test project of mine/system configs/another_screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive2/test project of mine/another_videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive2/test project of mine/system configs/another_screenshot.jpg': not there $ av co 1 -o /tmp -y task Revision 1 checkout in folder ../../../../tmp/test project of mine-rev1 [ RUNNING ] task Revision 1 checkout in folder ../../../../tmp/test project of mine-rev1 [ OK ] OK: '5adc03cd9261092f20cd2f444d29d772433823c37319fd8a9d95b77d3c439479' was output by both commands 'av hash' and 'av hash '/tmp/test project of mine-rev1'' OK: 0 returned by 'av diff 0vs0' OK: 0 returned by 'av diff 1vs1' OK: 0 returned by 'av diff headvs1' Perform some diffs COMPARING /home/michel/test-arcv/test project of mine with revision 0 : /tmp/Arcv.tmp.S2Y4khfU8x/test project of mine Only in /home/michel/test-arcv/test project of mine: file C.txt diff --no-dereference -r '--color=always' -u -X '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/EXCLUDE' "/tmp/Arcv.tmp.S2Y4khfU8x/test project of mine/system configs/sys config1.yml" "/home/michel/test-arcv/test project of mine/system configs/sys config1.yml" --- "/tmp/Arcv.tmp.S2Y4khfU8x/test project of mine/system configs/sys config1.yml" 2026-10-26 12:39:56.000000000 +0100 +++ "/home/michel/test-arcv/test project of mine/system configs/sys config1.yml" 2026-10-26 12:40:00.759237973 +0100 @@ -1 +1,2 @@ param1: 100 +param1: 101 Only in /home/michel/test-arcv/test project of mine/system configs: sys config2.yml Only in /tmp/Arcv.tmp.S2Y4khfU8x/test project of mine/system configs: sys config3.yml [!p[?3;4l> OK: 1 returned by 'av diff 0' , is != of 0 Inspecting changes OK: file C.txt is the same between head folder and revision folder OK: sys config2.yml is the same between head folder and revision folder OK: file C.txt is the same between head folder and original source folder OK: sys config2.yml is the same between head folder and original source folder OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test project of mine.archive/test project of mine.archive1/test project of mine/system configs/sys config1.yml' last line is correct ('param1: 101') Creating branch 'fun project' $ av --silent -yy branch "fun project" info The branch is going to be created in a folder '../fun project' from head revision 1 task Branch creation in folder ../fun project [ RUNNING ] task Branch creation in folder ../fun project [ OK ] task Branch 'fun project' commit in '/home/michel/test-arcv/fun project' [ RUNNING ] task Branch 'fun project' commit in '/home/michel/test-arcv/fun project' [ OK ] OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/fun project.archive0/fun project/system configs/sys config3.yml': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/head/fun project/system configs/sys config3.yml': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/head/fun project/videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/head/fun project/system configs/screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/fun project.archive0/fun project/videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/fun project.archive0/fun project/system configs/screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/head/fun project/another_videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/head/fun project/system configs/another_screenshot.jpg': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/fun project.archive0/fun project/another_videofile.mp4': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/fun project.archive/fun project.archive0/fun project/system configs/another_screenshot.jpg': not there Checking out rev 0 in '/tmp/test av' task Revision 0 checkout in folder ../../../../tmp/test av/test project of mine-rev0 [ RUNNING ] task Revision 0 checkout in folder ../../../../tmp/test av/test project of mine-rev0 [ OK ] OK 'file A.txt' content is correct ('Test file A') OK 'file B.txt' content is correct ('Test file B') OK 'system configs/sys config1.yml' content is correct ('param1: 100') OK 'system configs/sys config3.yml' content is correct ('param1: 300') OK: 'file C.txt': not there OK: 'system configs/sys config2.yml': not there OK: 'videofile.mp4': not there OK: 'system configs/screenshot.jpg': not there Checking out head in '/tmp/' using explicit source name task Checking out head revision inside '/tmp/test project of mine' [ RUNNING ] task Checking out head revision inside '/tmp/test project of mine' [ OK ] OK: 'system configs/sys config2.yml': present OK: 'system configs/sys config3.yml': not there OK 'file A.txt' content is correct ('Test file A') OK 'system configs/sys config1.yml' last line is correct ('param1: 101') OK: 'videofile.mp4': not there OK: 'system configs/screenshot.jpg': not there OK: 'another_videofile.mp4': not there OK: 'system configs/another_screenshot.jpg': not there [?12l[?25h getshot has finished. info EXECUTING PLAN 'init' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN init Initiate a revision control STEP 1 10/26/26 12:40 Example of putting a source folder under revision control $ ls -l . total 8 -rw-rw-r-- 1 michel michel 12 Oct 26 12:40 file_A.txt -rw-rw-r-- 1 michel michel 12 Oct 26 12:40 file_B.txt $ arcv -yy [?12l[?25h  info Committed first revision 66d73ee3f2d66846 OK: output of 'av rev' is correct $ av rev 0 $ av log 0 2026-10-26 12:40:17 Creation $ av log --verbose 0 2026-10-26 12:40:17 Creation file_A.txt file_B.txt Operation finished. $ av info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash 66d73ee3f2d66846106218bb0e5afee58525f5aab345278e59f0ae3f19ac8f2a) info No change in source [?12l[?25h getshot has finished. info EXECUTING PLAN 'addfiles' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN addfiles Check-in a new file STEP 1 10/26/26 12:40 Example of check-in of a new file $ echo "This is a new test report" > "test_report.txt" $ arcv check --verbose && _exit -1 "Error: no change detected and should have" || echo "OK change detected" There are new files for revision 0 [!p[?3;4l> OK change detected $ arcv -y -m "added test report" info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash 66d73ee3f2d66846106218bb0e5afee58525f5aab345278e59f0ae3f19ac8f2a) New: test_report.txt Previous logs: 0 2026-10-26 12:40:17 Creation Commit: Folder /home/michel/test-arcv/test-project is going to backed up as revision 1 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1 info Committed revision 1 signed 3b7fe74de2f80ca2 $ arcv check --verbose || _exit -1 "Error: change detected and shouldn't have" Image is up-to-date. Revision is 1 OK: output of 'av rev' is correct $ av log 1 2026-10-26 12:40:24 added test report 0 2026-10-26 12:40:17 Creation Inspecting repository revision folder OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1/test-project/file_A.txt': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1/test-project/file_B.txt': not there OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1/test-project/test_report.txt' content is correct ('This is a new test report') $ av rev 1 $ av log --verbose 1 2026-10-26 12:40:24 added test report test_report.txt 0 2026-10-26 12:40:17 Creation file_A.txt file_B.txt Operation finished. [?12l[?25h getshot has finished. info EXECUTING PLAN 'removefiles' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN removefiles Check-in a file for deletion STEP 1 10/26/26 12:40 Example of check-in a new file for deletion $ rm file_A.txt $ arcv check --verbose && _exit -1 "Error: no change detected and should have" || echo "OK change detected" There are deleted files for revision 1 [!p[?3;4l> OK change detected $ arcv -y -m "Removed file A" info SRC: /home/michel/test-arcv/test-project info REV: 1 (hash 3b7fe74de2f80ca2ef02ce520c603495c573d7bb1b091734aa6fe17988ff7f43) Deleted: file_A.txt Previous logs: 1 2026-10-26 12:40:24 added test report 0 2026-10-26 12:40:17 Creation Commit: Folder /home/michel/test-arcv/test-project is going to backed up as revision 2 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive2 info Committed revision 2 signed e4838b94db15e60e $ arcv check --verbose || _exit -1 "Error: change detected and shouldn't have" Image is up-to-date. Revision is 2 OK: output of 'av rev' is correct Inspecting repository revision folder OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive2/test-project/file_A.txt': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive2/test-project/file_B.txt': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive2/test-project/test_report.txt': not there OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive2/DROPPED' content is correct ('- /file_A.txt') $ av rev 2 $ av log --verbose 2 2026-10-26 12:40:32 Removed file A file_A.txt 1 2026-10-26 12:40:24 added test report test_report.txt 0 2026-10-26 12:40:17 Creation file_A.txt file_B.txt Operation finished. [?12l[?25h getshot has finished. info EXECUTING PLAN 'modifyfiles' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN modifyfiles Check-in a modified file STEP 1 10/26/26 12:40 Example of check-in of a modified file $ echo "Test result is OK" >> "test_report.txt" There are modified files for revision 2 [!p[?3;4l> OK change detected $ arcv -y -m "Update report with test result" info SRC: /home/michel/test-arcv/test-project info REV: 2 (hash e4838b94db15e60e2ef18a6a92c60ea96039f7a7990f95952e199e83bd2c60bc) Changed: test_report.txt Previous logs: 2 2026-10-26 12:40:32 Removed file A 1 2026-10-26 12:40:24 added test report 0 2026-10-26 12:40:17 Creation Commit: Folder /home/michel/test-arcv/test-project is going to backed up as revision 3 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive3 info Committed revision 3 signed bd0d606ccc985426 $ arcv check --verbose || _exit -1 "Error: change detected and shouldn't have" Image is up-to-date. Revision is 3 OK: output of 'av rev' is correct Inspecting repository revision folder OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive3/test-project/test_report.txt' last line is correct ('Test result is OK') OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive3/test-project/file_A.txt': not there OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive3/test-project/file_B.txt': not there $ av rev 3 $ av log --verbose 3 2026-10-26 12:40:39 Update report with test result test_report.txt 2 2026-10-26 12:40:32 Removed file A file_A.txt 1 2026-10-26 12:40:24 added test report test_report.txt 0 2026-10-26 12:40:17 Creation file_A.txt file_B.txt Operation finished. [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutrev' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutrev Checkout a revision STEP 1 10/26/26 12:40 Example of check-out of a revision Image is up-to-date. Revision is 3 $ av co 0 -o /tmp task Revision 0 checkout in folder ../../../../tmp/test-project-rev0 [ RUNNING ] task Revision 0 checkout in folder ../../../../tmp/test-project-rev0 [ OK ] file_A.txt file_B.txt OK 'file_A.txt' content is correct ('Test file A') OK 'file_B.txt' content is correct ('Test file B') Image is up-to-date. Revision is 3 [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutfile' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutfile Checkout a file from head revision to restore it after modification STEP 1 10/26/26 12:40 Example of restoring a modified file from head revision $ cat "test_report.txt" This is a new test report Test result is OK $ echo "Line with errors" >> "test_report.txt" There are modified files for revision 3 [!p[?3;4l> OK change detected OK 'test_report.txt' last line is correct ('Line with errors') $ arcv -y co "test_report.txt" old file saved to '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/dropped/.#modified.3.20261026-1240.test_report.txt' info Successfully restored test_report.txt from revison 3 OK: output of 'av rev' is correct OK 'test_report.txt' last line is correct ('Test result is OK') $ arcv co "test_report.txt" info /home/michel/test-arcv/test-project/test_report.txt is already up-to-date Image is up-to-date. Revision is 3 OK 'test_report.txt' last line is correct ('Test result is OK') [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutfilefromrev' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutfilefromrev Checkout a file from a specific revision STEP 1 10/26/26 12:40 Example of check-out of a modified file from a random revision $ cat "test_report.txt" This is a new test report Test result is OK Restoring revision 1 containing only first line $ arcv -y co "test_report.txt:1" old file saved to '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/dropped/.#modified.3.20261026-1240.test_report.txt' info Successfully restored test_report.txt from revison 1 OK 'test_report.txt' last line is correct ('This is a new test report') Testing checkout scenario with invalid revision numbers OK it was detected revision 0 does not exist for the file OK it was detected revision 100 does not exist for the file Restoring back head revision containing the 2 lines $ arcv -y co "test_report.txt" old file saved to '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/dropped/.#modified.3.20261026-1241.test_report.txt' info Successfully restored test_report.txt from revison 3 OK 'test_report.txt' last line is correct ('Test result is OK') [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutdirfromrev' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutdirfromrev Checkout a subfolder to restore it after modification STEP 1 10/26/26 12:41 Example of check-out of a modified subfolder Adding and committing subfolder named 'subdir' plus file_D.txt below with line 'This is file D' There are new files for revision 3 [!p[?3;4l> OK change detected [?12l[?25h  info Committed revision 4 signed 7759787f1c491386 Adding extra line for file_D.txt [?12l[?25h  info Committed revision 5 signed c70a1573849b776c Checking out initial version of 'subdir' $ arcv -y co subdir:$(( $(av rev) - 1)) info Successfully restored subdir from revison 4 OK 'subdir/file_D.txt' last line is correct ('This is file D') Checking out latest version of 'subdir' $ arcv -y co subdir info Successfully restored subdir from revison 5 OK 'subdir/file_D.txt' last line is correct ('Extra line for file D') [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutreltag' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutreltag Checkout a release from a release tag STEP 1 10/26/26 12:41 Example of check-out of a release $ echo "This is a new test report" > "test_report.txt"  info Committed revision 6 signed d6f556b14ddf6c1f $ av -yy pub -m "A test release 1.0.0" || _exit -1 "Failed to create release tag" info SRC: /home/michel/test-arcv/test-project info REV: 5 (hash d6f556b14ddf6c1f80a7f34959f61527d76154ef42feb171352a40b8368937de) info No change in source  info Committed revision 7 signed 1a7b381bf2944705 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 7 Now applying changes after tag: remove file_B.txt and add extra line to test_report.txt $ rm file_B.txt $ echo "Extended test report" >> "test_report.txt"  info Committed revision 8 signed 2ae1aa7ff5d562b1 Checking out tagged release 1.0.0 and checking sources for correcness (file_A.txt deleted in previous test) $ av co R1.0.0 -o /tmp task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ OK ] Image is up-to-date. Revision is 8 $ ls /tmp/test-project-R1.0.0 VERSION.txt file_B.txt subdir test_report.txt OK: 'file_A.txt': not there OK 'file_B.txt' content is correct ('Test file B') OK 'test_report.txt' content is correct ('This is a new test report') [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutfile_with_removed_files' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutfile_with_removed_files Checkout a revision by its number STEP 1 10/26/26 12:41 Example of checkout of a revision containing anterior commits with removed files [?12l[?25h   info Committed first revision 45e0badb6e3eaea8  info Committed revision 1 signed 5eceb39af1c71df5  info Committed revision 2 signed 45e0badb6e3eaea8  info Committed revision 3 signed 1dfe1f88a3cb9ccb  info Committed revision 4 signed d1138a7abdd882ee $ av log 4 2026-10-26 12:41:24 Added line to file A 3 2026-10-26 12:41:23 Removed test file B 2 2026-10-26 12:41:23 Removed test report 1 2026-10-26 12:41:22 Added test report 0 2026-10-26 12:41:21 Creation $ av co 3 -o /tmp || _exit -1 "Error: check out failed" task Revision 3 checkout in folder ../../../../tmp/test-project-rev3 [ RUNNING ] task Revision 3 checkout in folder ../../../../tmp/test-project-rev3 [ OK ] OK: '/tmp/test-project-rev3/test_report.txt': not there OK: '/tmp/test-project-rev3/file_B.txt': not there OK '/tmp/test-project-rev3/file_A.txt' last line is correct ('Test file A') $ av co 4 -o /tmp || _exit -1 "Error: check out failed" task Revision 4 checkout in folder ../../../../tmp/test-project-rev4 [ RUNNING ] task Revision 4 checkout in folder ../../../../tmp/test-project-rev4 [ OK ] OK: '/tmp/test-project-rev3/test_report.txt': not there OK: '/tmp/test-project-rev3/file_B.txt': not there OK '/tmp/test-project-rev4/file_A.txt' last line is correct ('A new line for file A. OK.') [?12l[?25h getshot has finished. info EXECUTING PLAN 'displayrev' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displayrev Display current revision STEP 1 10/26/26 12:41 Example of showing current revision OK: output of 'av rev' is correct $ av rev 4 $ av log 4 2026-10-26 12:41:24 Added line to file A 3 2026-10-26 12:41:23 Removed test file B 2 2026-10-26 12:41:23 Removed test report 1 2026-10-26 12:41:22 Added test report 0 2026-10-26 12:41:21 Creation [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutheadrev' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutheadrev Checkout head revision into the current source STEP 1 10/26/26 12:41 Example of checkout of all head revision files [?12l[?25h   info Committed first revision 3878ea61f9786bd8 $ rm file_B.txt $ echo "A new line for file A. OK." >> "file_A.txt" $ arcv check --verbose && _exit -1 "Error: no change detected and should have" || echo "OK change detected" Permission-only change:  There are deleted, modified files for revision 0 [!p[?3;4l> OK change detected Diffing, pls check manually $ av diff || true COMPARING /home/michel/test-arcv/test-project with revision head : /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project diff --no-dereference -r '--color=always' -u -X /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/EXCLUDE /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project/file_A.txt /home/michel/test-arcv/test-project/file_A.txt --- /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project/file_A.txt 2026-10-26 12:41:33.000000000 +0100 +++ /home/michel/test-arcv/test-project/file_A.txt 2026-10-26 12:41:34.268245787 +0100 @@ -1 +1,2 @@ Test file A +A new line for file A. OK. Only in /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project: file_B.txt [!p[?3;4l> Checking out head revision $ av -y co || _exit -1 "Error: check out head revision failed" task Updating current working directory with head revision [ RUNNING ] task Updating current working directory with head revision [ OK ] Inspecting checked out files $ ls -l total 8 -rw-rw-r-- 1 michel michel 12 Oct 26 12:41 file_A.txt -rw-rw-r-- 1 michel michel 12 Oct 26 12:41 file_B.txt OK 'file_A.txt' content is correct ('Test file A') OK 'file_B.txt' content is correct ('Test file B') [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkoutsource' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutsource Checkout any source folder stored in the repository in a random location STEP 1 10/26/26 12:41 Example of checkout of head revision of a test project into the current directory [?12l[?25h   info Committed first revision 6a2e2232e2cdbbf0 info SRC: /home/michel/test-arcv/test-project info test-project is the first archived version info No change in source  info Committed revision 1 signed 41b30a2c678db91e info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 info Successfully restored VERSION.txt from revison 1 $ echo "Additional line for file A" >> file_A.txt $ echo "Additional line for file B" >> file_B.txt  info Committed revision 2 signed 50c473432ee091a8 $ echo "This is file C" > "file_C.txt"  info Committed revision 3 signed 3cd0d8d8eb96435c Change directory to /home/michel/checkoutsource-test-folder Checking out source from repo $ av -y co --source=test-project || _exit -1 "Error: check out head revision failed" task Checking out head revision inside '/home/michel/checkoutsource-test-folder/test-project' [ RUNNING ] task Checking out head revision inside '/home/michel/checkoutsource-test-folder/test-project' [ OK ] OK 'test-project/file_A.txt' last line is correct ('Additional line for file A') OK 'test-project/file_B.txt' last line is correct ('Additional line for file B') $ Test__assertFilesShouldExist "test-project/file_C.txt" OK: 'test-project/file_C.txt': present [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutsource Checkout any source folder stored in the repository in a random location STEP 2 10/26/26 12:41 Example of checkout of a tagged release of a test project into the current directory Change directory to /home/michel/checkoutsource-test-folder $ av -y co R1.0.0 --source=test-project || _exit -1 "Error: check out head revision failed" task Release R1.0.0 checkout in folder test-project-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder test-project-R1.0.0 [ OK ] OK 'test-project-R1.0.0/file_A.txt' content is correct ('Test file A') OK 'test-project-R1.0.0/file_B.txt' content is correct ('Test file B') $ Test__assertFilesShouldNotExist "test-project-R1.0.0/file_C.txt" OK: 'test-project-R1.0.0/file_C.txt': not there [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutsource Checkout any source folder stored in the repository in a random location STEP 3 10/26/26 12:41 Example of checkout of a specific revision of a test project into the current directory Change directory to /home/michel/checkoutsource-test-folder $ av -y co 2 --source=test-project || _exit -1 "Error: check out head revision failed" task Revision 2 checkout in folder test-project-rev2 [ RUNNING ] task Revision 2 checkout in folder test-project-rev2 [ OK ] OK 'test-project/file_A.txt' last line is correct ('Additional line for file A') OK 'test-project/file_B.txt' last line is correct ('Additional line for file B') $ Test__assertFilesShouldNotExist "test-project-rev2/file_C.txt" OK: 'test-project-rev2/file_C.txt': not there [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkoutsource Checkout any source folder stored in the repository in a random location STEP 4 10/26/26 12:41 Example of checkout of head revision of a test project into a specific output folder [?12l[?25h   info Committed first revision c249037ac7ad881b info SRC: /home/michel/test-arcv/test-project info test-project is the first archived version info No change in source  info Committed revision 1 signed 6d58b676d5d134e7 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 info Successfully restored VERSION.txt from revison 1 $ echo "Additional line for file A" >> file_A.txt $ echo "Additional line for file B" >> file_B.txt  info Committed revision 2 signed 043ec0cd5c79ec81 $ av -y co --source=test-project -o /tmp || _exit -1 "Error: check out head revision failed" task Checking out head revision inside '/tmp/test-project' [ RUNNING ] task Checking out head revision inside '/tmp/test-project' [ OK ] OK '/tmp/test-project/file_A.txt' last line is correct ('Additional line for file A') OK '/tmp/test-project/file_B.txt' last line is correct ('Additional line for file B') [?12l[?25h getshot has finished. info EXECUTING PLAN 'source-uri' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN source-uri Manage revision control of data fetched from a MongoDB URI STEP 1 10/26/26 12:42 Example of fetching a MongoDB dump from a random URI into a source folder without any revision control $ av -y --source=mongodb://192.168.0.12:27018/slashetc --fetch-only || _exit -1 "Error: fetch from mongodb URI failed" task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ OK ] The source 'mongodb-slashetc@192.168.0.12-27018' was not added to the repository. To do so type 'av' inside the created folder, or call the same command with '--fetch' option. OK: '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz': present $ Test__assertFileSizeGreaterThan "/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz" 0 OK '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz' size 27967 > 0 [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN source-uri Manage revision control of data fetched from a MongoDB URI STEP 2 10/26/26 12:42 Example of initiating revision control for a MongoDB dump fetched from an URI $ av -y --source=mongodb://192.168.0.12:27018/slashetc --fetch || _exit -1 "Error: check in of mongodb URI failed" task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ OK ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ RUNNING ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ OK ] OK: '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz': present OK '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz' size 27709 > 0 OK: output of 'av rev' is correct OK: 0 returned by 'av check' COMPARING /tmp/mongodb-slashetc@192.168.0.12-27018 with revision head : /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/head/mongodb-slashetc@192.168.0.12-27018 OK: 0 returned by 'av diff' [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN source-uri Manage revision control of data fetched from a MongoDB URI STEP 3 10/26/26 12:42 Example of adding a new revision directly from the MongoDB URI without requiring an existing local source $ Test__assertChangeDir "/tmp/" $ av -y --source=mongodb://192.168.0.12:27018/slashetc --fetch || _exit -1 "Error: check in of mongodb URI failed" info SRC: /tmp/mongodb-slashetc@192.168.0.12-27018 info REV: 0 (hash 48f828c17a2ab9ba482fe2f0a4339899f5aedc5f8e3351829e5a1289f912abdf) task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ OK ] Changed: mongo-db-slashetc.gz Previous logs: 0 2026-10-26 12:42:16 Creation Commit: Folder /tmp/mongodb-slashetc@192.168.0.12-27018 is going to backed up as revision 1 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive1 [?12l[?25h info Committed revision 1 signed f7aa750bbfbe8b04 OK: '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz': present OK '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz' size 27927 > 0 OK: output of 'av rev' is correct OK: 0 returned by 'av check' COMPARING /tmp/mongodb-slashetc@192.168.0.12-27018 with revision head : /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/head/mongodb-slashetc@192.168.0.12-27018 OK: 0 returned by 'av diff' [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN source-uri Manage revision control of data fetched from a MongoDB URI STEP 4 10/26/26 12:42 Example of adding a new revision from an existing local source folder by explictly requesting to fetch a new dump $ av -y -m "database update" --fetch || _exit -1 "Error: check in of mongodb URI failed" info SRC: /tmp/mongodb-slashetc@192.168.0.12-27018 info REV: 1 (hash f7aa750bbfbe8b04f5b93d1a3eb6ef1c70a25812ad078ebce129ddae88356ce2) task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ OK ] Changed: mongo-db-slashetc.gz Previous logs: 1 2026-10-26 12:42:25 Changed: mongo-db-slashetc.gz 0 2026-10-26 12:42:16 Creation Commit: Folder /tmp/mongodb-slashetc@192.168.0.12-27018 is going to backed up as revision 2 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive2 info Committed revision 2 signed 81d1d39eec1224ec OK: '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz': present OK '/tmp/mongodb-slashetc@192.168.0.12-27018/mongo-db-slashetc.gz' size 27968 > 0 OK: output of 'av rev' is correct OK: 0 returned by 'av check' COMPARING /tmp/mongodb-slashetc@192.168.0.12-27018 with revision head : /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/head/mongodb-slashetc@192.168.0.12-27018 OK: 0 returned by 'av diff' OK: 'av changelog --fmt=plain|filter-changelog.sh' output is correct [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN source-uri Manage revision control of data fetched from a MongoDB URI STEP 5 10/26/26 12:42 Example of creating a new revision directly from the MongoDB URI and cleaning up the folder afterwards $ Test__assertChangeDir "/tmp/" $ av -y --source=mongodb://192.168.0.12:27018/slashetc --fetch --rm || _exit -1 "Error: check in of mongodb URI failed" info SRC: /tmp/mongodb-slashetc@192.168.0.12-27018 info REV: 2 (hash 81d1d39eec1224ec50c3d78bda788cc8fd3aaf26d3ea84625cd913b5fe13cacd) task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ OK ] Changed: mongo-db-slashetc.gz Previous logs: 2 2026-10-26 12:42:33 database update 1 2026-10-26 12:42:25 Changed: mongo-db-slashetc.gz 0 2026-10-26 12:42:16 Creation Commit: Folder /tmp/mongodb-slashetc@192.168.0.12-27018 is going to backed up as revision 3 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive3 [?12l[?25h info Committed revision 3 signed c6ae57a4d8ba18cd task Cleaning up folder 'mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Cleaning up folder 'mongodb-slashetc@192.168.0.12-27018' [ OK ] OK: '/tmp/mongodb-slashetc@192.168.0.12-27018': not there OK: output of 'av list|filter-sourcelist.sh mongodb-slashetc@192.168.0.12-27018' is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'push-uri' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN push-uri Pushing back/restoring data fetched from a MongoDB URI under revision control STEP 1 10/26/26 12:42 Example of initiating revision control for a MongoDB dump fetched from an URI $ av -y --silent --source=mongodb://192.168.0.12:27018/slashetc --fetch || _exit -1 "Error: check in of mongodb URI failed" task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ OK ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ RUNNING ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ OK ] $ av -y --silent --fetch || _exit -1 "Error: check in of mongodb URI failed" task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ OK ] [?12l[?25h  info Committed revision 1 signed 9a73cadb5e3bab35 $ av -yy pub -m "1.0.0 from rev 1" info SRC: /tmp/mongodb-slashetc@192.168.0.12-27018 info REV: 0 (hash 9a73cadb5e3bab35a7656954bec6c86da59e25757f4954925a9509305cf58887) info No change in source  info Committed revision 2 signed b3948143197f9f59 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 2 $ av -y --silent --fetch || _exit -1 "Error: check in of mongodb URI failed" task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ OK ] [?12l[?25h  info Committed revision 3 signed 3eea6ae1d3ded6f9 $ av push -y task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ OK ] $ av -y push 1 task Revision 1 checkout in folder mongodb-slashetc@192.168.0.12-27018-rev1 [ RUNNING ] task Revision 1 checkout in folder mongodb-slashetc@192.168.0.12-27018-rev1 [ OK ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ OK ] $ av -y push R1.0.0 task Release R1.0.0 checkout in folder mongodb-slashetc@192.168.0.12-27018-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder mongodb-slashetc@192.168.0.12-27018-R1.0.0 [ OK ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ OK ] $ av -y --source=mongodb://192.168.0.12:27018/slashetc push R1.0.0 task Release R1.0.0 checkout in folder mongodb-slashetc@192.168.0.12-27018-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder mongodb-slashetc@192.168.0.12-27018-R1.0.0 [ OK ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Pushing data into 'mongodb://192.168.0.12:27018/slashetc' [ OK ] [?12l[?25h getshot has finished. info EXECUTING PLAN 'circular' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN circular Circular revisions STEP 1 10/26/26 12:43 Example of committing revisions with a circular history $ Test__assertChangeDir "/tmp/" task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ OK ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ RUNNING ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ OK ]  info Committed revision 1 signed 5cfb9e6ba4c8f6f8 OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive1/mongodb-slashetc@192.168.0.12-27018/file_1.txt' content is correct ('file 1') OK: output of 'ls -1 /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive1/mongodb-slashetc@192.168.0.12-27018' is correct  info Committed revision 2 signed 6bfb4c9901c272bd OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive2/mongodb-slashetc@192.168.0.12-27018/file_2.txt' content is correct ('file 2') OK: output of 'pushd /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive2/mongodb-slashetc@192.168.0.12-27018/ &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct task Removing antic revision 0 [ RUNNING ] task Removing antic revision 0 [ OK ]  info Committed revision 0 signed 2d31cafd8c031931 OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive0/mongodb-slashetc@192.168.0.12-27018/file_3.txt' content is correct ('file 3') OK: output of 'pushd /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive0/mongodb-slashetc@192.168.0.12-27018/ &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct OK: '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive3': not there task Removing antic revision 1 [ RUNNING ] task Removing antic revision 1 [ OK ]  info Committed revision 1 signed ad8c9f0d0cfaaef3 OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive1/mongodb-slashetc@192.168.0.12-27018/file_4.txt' content is correct ('file 4') OK: output of 'pushd /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive1/mongodb-slashetc@192.168.0.12-27018/ &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct task Removing antic revision 2 [ RUNNING ] task Removing antic revision 2 [ OK ]  info Committed revision 2 signed 845cfafe00d6709c OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive2/mongodb-slashetc@192.168.0.12-27018/file_5.txt' content is correct ('file 5') OK: output of 'pushd /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive2/mongodb-slashetc@192.168.0.12-27018/ &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct task Removing antic revision 0 [ RUNNING ] task Removing antic revision 0 [ OK ]  info Committed revision 0 signed 205998aa8ea0d9d2 OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive0/mongodb-slashetc@192.168.0.12-27018/file_6.txt' content is correct ('file 6') OK: output of 'pushd /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/mongodb-slashetc@192.168.0.12-27018.archive/mongodb-slashetc@192.168.0.12-27018.archive0/mongodb-slashetc@192.168.0.12-27018/ &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN circular Circular revisions STEP 2 10/26/26 12:43 Example of checking out head of a source with circular history $ Test__assertChangeDir "/tmp/" $ av -o /tmp --source=mongodb-slashetc@192.168.0.12-27018 co task Checking out head revision inside '/tmp/mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Checking out head revision inside '/tmp/mongodb-slashetc@192.168.0.12-27018' [ OK ] OK '/tmp/mongodb-slashetc@192.168.0.12-27018/file_1.txt' content is correct ('file 1') OK '/tmp/mongodb-slashetc@192.168.0.12-27018/file_2.txt' content is correct ('file 2') OK '/tmp/mongodb-slashetc@192.168.0.12-27018/file_3.txt' content is correct ('file 3') OK '/tmp/mongodb-slashetc@192.168.0.12-27018/file_4.txt' content is correct ('file 4') OK '/tmp/mongodb-slashetc@192.168.0.12-27018/file_5.txt' content is correct ('file 5') OK '/tmp/mongodb-slashetc@192.168.0.12-27018/file_6.txt' content is correct ('file 6') [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN circular Circular revisions STEP 3 10/26/26 12:43 Example of checking out a specific revision of a source with circular history $ Test__assertChangeDir "/tmp/" $ av -y -o /tmp --source=mongodb-slashetc@192.168.0.12-27018 co 0 task Revision 0 checkout in folder mongodb-slashetc@192.168.0.12-27018-rev0 [ RUNNING ] task Revision 0 checkout in folder mongodb-slashetc@192.168.0.12-27018-rev0 [ OK ] OK: output of 'pushd /tmp/mongodb-slashetc@192.168.0.12-27018-rev0 &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct $ av -y -o /tmp --source=mongodb-slashetc@192.168.0.12-27018 co 2 task Revision 2 checkout in folder mongodb-slashetc@192.168.0.12-27018-rev2 [ RUNNING ] task Revision 2 checkout in folder mongodb-slashetc@192.168.0.12-27018-rev2 [ OK ] OK: output of 'pushd /tmp/mongodb-slashetc@192.168.0.12-27018-rev2 &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct task Removing antic revision 1 [ RUNNING ] task Removing antic revision 1 [ OK ]  info Committed revision 1 signed ccbacef0c5afbcd1 $ av -y -o /tmp --source=mongodb-slashetc@192.168.0.12-27018 co 1 task Revision 1 checkout in folder ../mongodb-slashetc@192.168.0.12-27018-rev1 [ RUNNING ] task Revision 1 checkout in folder ../mongodb-slashetc@192.168.0.12-27018-rev1 [ OK ] OK: output of 'pushd /tmp/mongodb-slashetc@192.168.0.12-27018-rev1 &>/dev/null && ls -1 file_*|xargs echo && popd &>/dev/null' is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'circular-save' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN circular-save Circular revisions with cycles backup STEP 1 10/26/26 12:43 Example of circular revisions with a cycle backup $ Test__assertChangeDir "/tmp/" task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ RUNNING ] task Fetching mongodb://192.168.0.12:27018/slashetc into 'mongodb-slashetc@192.168.0.12-27018' [ OK ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ RUNNING ] task Creating 'mongodb-slashetc@192.168.0.12-27018' in repository [ OK ] Creating the source with a revision cycle of 3 with cycle backup [?12l[?25h  info Committed revision 1 signed 2d81e0654b711067 [?12l[?25h  info Committed revision 2 signed fff736f370c5bb5a task Performing cycle backup [ RUNNING ] task Performing cycle backup [ OK ] [?12l[?25h task Removing antic revision 0 [ RUNNING ] task Removing antic revision 0 [ OK ]  info Committed revision 0 signed 20768508bb12b2b0 task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ RUNNING ] task Updating by fetching 'mongodb://192.168.0.12:27018/slashetc' [ OK ] [?12l[?25h task Removing antic revision 1 [ RUNNING ] task Removing antic revision 1 [ OK ]  info Committed revision 1 signed c9e20afa4750f30f [?12l[?25h task Removing antic revision 2 [ RUNNING ] task Removing antic revision 2 [ OK ]  info Committed revision 2 signed 923088aca683c523 task Performing cycle backup [ RUNNING ] task Performing cycle backup [ OK ] [?12l[?25h task Removing antic revision 0 [ RUNNING ] task Removing antic revision 0 [ OK ]  info Committed revision 0 signed 73627a636e85a206 OK: output of 'av rev' is correct OK: mongo-db-slashetc.gz is the same between rev 0 and rev1 OK: mongo-db-slashetc.gz is the same between rev 0 and rev2 OK: mongo-db-slashetc.gz is the same between rev 0 and cycle rev1 OK: mongo-db-slashetc.gz is not the same between rev 0 and cycle rev0 $ av co 0 --source="mongodb-slashetc@192.168.0.12-27018-cycles" -o /tmp task Revision 0 checkout in folder ../mongodb-slashetc@192.168.0.12-27018-cycles-rev0 [ RUNNING ] task Revision 0 checkout in folder ../mongodb-slashetc@192.168.0.12-27018-cycles-rev0 [ OK ] $ av co --source="mongodb-slashetc@192.168.0.12-27018-cycles" -o /tmp task Checking out head revision inside '/tmp/mongodb-slashetc@192.168.0.12-27018-cycles' [ RUNNING ] task Checking out head revision inside '/tmp/mongodb-slashetc@192.168.0.12-27018-cycles' [ OK ] info No change in source OK: 0 returned by 'av -y --silent' OK: output of 'av rev' is correct OK: output of 'ls -1 .|xargs echo' is correct OK 'cycle_0_rev0.txt' content is correct ('0_0') OK 'cycle_0_rev1.txt' content is correct ('0_1') OK 'cycle_0_rev2.txt' content is correct ('0_2') OK 'cycle_1_rev0.txt' content is correct ('1_0') OK 'cycle_1_rev1.txt' content is correct ('1_1') OK 'cycle_1_rev2.txt' content is correct ('1_2') OK: mongo-db-slashetc.gz is not the same between rev0 and rev 1 of DB dump file [?12l[?25h getshot has finished. info EXECUTING PLAN 'commitinterval' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN commitinterval Restrict time interval between two commits STEP 1 10/26/26 12:43 Example of restricting the time interval between two commits $ arcv --silent -yy --interval=5s [?12l[?25h   info Committed first revision d9b9d2543f057f06 OK: output of 'av rev' is correct info 4 secs remaining before allowing next commit. error Nothing committed. [!p[?3;4l> OK: 127 returned by 'av --silent -ym 'A'' sleeping 5s  info Committed revision 1 signed 9d7c4cdc720fca19 OK: 0 returned by 'av --silent -ym 'A'' sleeping 2s info 2 secs remaining before allowing next commit. error Nothing committed. [!p[?3;4l> OK: 127 returned by 'av --silent -ym 'B'' sleeping 4s  info Committed revision 2 signed 69ecb026270d35c2 OK: 0 returned by 'av --silent -ym 'B'' [?12l[?25h getshot has finished. info EXECUTING PLAN 'forcecommit' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN forcecommit Force creation of a new revision even when there's no change STEP 1 10/26/26 12:44 Example of restricting the time interval between two commits $ arcv --silent -y [?12l[?25h   info Committed first revision b10029f154fd5cd8 $ arcv -y --force -m "no change commit" info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash b10029f154fd5cd84590bae6fafafa3a924be042d9fca78a34ca1af1fcdfd170) info No change in source Commit: Folder /home/michel/test-arcv/test-project is going to backed up as revision 1 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1 info Committed revision 1 signed b10029f154fd5cd8 OK: output of 'av rev' is correct info No change in source info No change in source OK: output of 'av rev' is correct info No change in source  info Committed revision 2 signed b10029f154fd5cd8 OK: output of 'av rev' is correct  info Committed revision 3 signed 422a4718058539ce OK: 0 returned by 'av --silent -ym 'added A file'' OK: output of 'av rev' is correct info No change in source OK: output of 'av rev' is correct info No change in source  info Committed revision 4 signed 422a4718058539ce OK: output of 'av rev' is correct OK: 'av changelog --fmt=plain|filter-changelog.sh' output is correct task Revision 1 checkout in folder ../../../../tmp/test-project-rev1 [ RUNNING ] task Revision 1 checkout in folder ../../../../tmp/test-project-rev1 [ OK ] OK: 0 returned by 'av co 1 -o /tmp' OK: '/tmp/test-project-rev1': present OK: '/tmp/test-project-rev1/A': not there [?12l[?25h getshot has finished. info EXECUTING PLAN 'displaylog' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displaylog Display revision history of a source folder STEP 1 10/26/26 12:44 Example of showing short and long revision log messages [?12l[?25h   info Committed first revision a79964792bcd1e15 Permission-only change:    info Committed revision 1 signed 46917493630e7020 $ av log 1 2026-10-26 12:44:20 Updated file set to demonstrate log list 0 2026-10-26 12:44:20 Creation OK: 'av log --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: output of 'av log --fmt=plain|cut -d" " -f2' is correct $ av log --verbose 1 2026-10-26 12:44:20 Updated file set to demonstrate log list file_C.txt file_B.txt file_A.txt 0 2026-10-26 12:44:20 Creation file_A.txt file_B.txt Operation finished. OK: 'av log --verbose --fmt=plain|cut -d" " -f2,3 --complement' output is correct [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displaylog Display revision history of a source folder STEP 2 10/26/26 12:44 Example of log messages for a certain range of revisions OK: 'av log --from=0 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log --from=2 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log --from=4 --fmt=plain|cut -d" " -f2,3 --complement' output is correct error The specified most recent start revision 5 (5) is superior to the head revision 4 error Operation ended with a failure. Please check above messages. [!p[?3;4l> OK: 255 returned by 'av log --silent --from=5' , is != of 0 OK: 'av log --to=4 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log --to=2 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log --to=0 --fmt=plain|cut -d" " -f2,3 --complement' output is correct error The specified most recent start revision 4 (4) is inferior to the specific end revision 5 (5) error Operation ended with a failure. Please check above messages. [!p[?3;4l> OK: 255 returned by 'av log --silent --to=5' , is != of 0 OK: 'av log --from=3 --to=1 --fmt=plain|cut -d" " -f2,3 --complement' output is correct error The specified most recent start revision 3 (3) is inferior to the specific end revision 4 (4) error Operation ended with a failure. Please check above messages. [!p[?3;4l> OK: 255 returned by 'av log --silent --from=3 --to=4' , is != of 0 [?12l[?25h getshot has finished. info EXECUTING PLAN 'displaylog_menu' warning Live recording skipped for 'Example of interacting with the revision history menu to perform diffs' since interactive mode disabled info EXECUTING PLAN 'displayfilelog' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displayfilelog Display revision history of a file STEP 1 10/26/26 12:44 Example of showing revision log messages of a file $ av log file_A.txt 4 2026-10-26 12:44:44 added stamp 4 line to file A 3 2026-10-26 12:44:43 added stamp 3 line to file A 2 2026-10-26 12:44:42 added stamp 2 line to file A 1 2026-10-26 12:44:42 added stamp 1 line to file A 0 2026-10-26 12:44:41 Creation $ av log file_A.txt --from=3 --to=1 3 2026-10-26 12:44:43 added stamp 3 line to file A 2 2026-10-26 12:44:42 added stamp 2 line to file A 1 2026-10-26 12:44:42 added stamp 1 line to file A OK: 'av log file_A.txt --from=0 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log file_A.txt --from=2 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log file_A.txt --from=4 --fmt=plain|cut -d" " -f2,3 --complement' output is correct error The specified most recent start revision 5 (5) is superior to the head revision 4 error Operation ended with a failure. Please check above messages. [!p[?3;4l> OK: 255 returned by 'av log --silent --from=5' , is != of 0 OK: 'av log file_A.txt --to=4 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log file_A.txt --to=2 --fmt=plain|cut -d" " -f2,3 --complement' output is correct OK: 'av log file_A.txt --to=0 --fmt=plain|cut -d" " -f2,3 --complement' output is correct error The specified most recent start revision 4 (4) is inferior to the specific end revision 5 (5) error Operation ended with a failure. Please check above messages. [!p[?3;4l> OK: 255 returned by 'av log --silent --to=5' , is != of 0 OK: 'av log file_A.txt --from=3 --to=1 --fmt=plain|cut -d" " -f2,3 --complement' output is correct error The specified most recent start revision 3 (3) is inferior to the specific end revision 4 (4) error Operation ended with a failure. Please check above messages. [!p[?3;4l> OK: 255 returned by 'av log file_A.txt --silent --from=3 --to=4' , is != of 0 [?12l[?25h getshot has finished. info EXECUTING PLAN 'displayfilelog_menu' warning Live recording skipped for 'Example of interacting with the file revision history menu to perform diffs' since interactive mode disabled info EXECUTING PLAN 'displayfilelog_av' warning Live recording skipped for 'Example of checking a large file revision history (arcv)' since interactive mode disabled info EXECUTING PLAN 'displayreleaselog' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displayreleaselog Display release tag history STEP 1 10/26/26 12:44 Example of release tag history display  info Committed revision 1 signed c670377878c72406 $ av -yy pub -m "A test release 1.0.0" || _exit -1 "Failed to create release tag" info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash c670377878c72406f2e9a53072aa571203dc94014db0b8e2a07b94aee97e10f7) info No change in source  info Committed revision 2 signed f8593af43497268e info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 2 $ echo "2.0.0" > VERSION.txt  info Committed revision 3 signed fb70a84f31da8e48  info Committed revision 4 signed 83cd80ff7f6631c5  info Committed revision 5 signed d2d2a45988dd07f6 $ av -yy pub -m "A test release 2.0.0" || _exit -1 "Failed to create release tag" info SRC: /home/michel/test-arcv/test-project info REV: 4 (hash d2d2a45988dd07f6c3d6210522873e7b6b95704912daa0d83b7b67b4ae931f06) info No change in source info Going to create release tag R2.0.0 info Successfully created release tag R2.0.0 for revision 5 $ av rel R2.0.0 5 A test release 2.0.0 R1.0.0 2 A test release 1.0.0 OK: 'av rel --fmt=plain' output is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'displayreleaselog_menu' warning Live recording skipped for 'Example of interacting with the release menu to perform diffs' since interactive mode disabled info EXECUTING PLAN 'displaychangelog' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displaychangelog Display log history since last release STEP 1 10/26/26 12:45 Example of change log from a certain release tag  info Committed revision 3 signed 008ace1df9191e40 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 3 OK: 'av changelog --fmt=plain|filter-changelog.sh' output is correct [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displaychangelog Display log history since last release STEP 2 10/26/26 12:45 Example of change log when some revisions exist but no release tag OK: 'av changelog --fmt=plain|filter-changelog.sh' output is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'displayhash' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN displayhash Display hash signature of the head revision STEP 1 10/26/26 12:45 Example of showing the hash signature of head revision info arcv run from riffian-dell, storage on riffian will be accessed via mountpoint /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK [?12l[?25h  task Creating archive version 0 [ RUNNING ] task Creating archive version 0 [ OK ] task Updating CHANGE_LOG [ RUNNING ] task Updating CHANGE_LOG [ OK ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ RUNNING ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ OK ] task Updating HEAD [ RUNNING ] task Updating HEAD [ OK ] info Committed first revision signed 52a0ad50cf7a9dd8cded12618338f354cef0508fcd2753e94971dc9b6e11c300 Operation finished. $ av hash 52a0ad50cf7a9dd8cded12618338f354cef0508fcd2753e94971dc9b6e11c300 $ av co -o /tmp task Checking out head revision inside '/tmp/test-project' [ RUNNING ] task Checking out head revision inside '/tmp/test-project' [ OK ] OK: '52a0ad50cf7a9dd8cded12618338f354cef0508fcd2753e94971dc9b6e11c300' was output by both commands 'av hash' and 'av hash /tmp/test-project' [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkhash' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkhash Recompute and check hash signatures from checked out folders STEP 1 10/26/26 12:45 Example of showing how the hash signature can be recomputed and crosschecked with the original one established at commit info arcv run from riffian-dell, storage on riffian will be accessed via mountpoint /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK [?12l[?25h  task Creating archive version 0 [ RUNNING ] task Creating archive version 0 [ OK ] task Updating CHANGE_LOG [ RUNNING ] task Updating CHANGE_LOG [ OK ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ RUNNING ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ OK ] task Updating HEAD [ RUNNING ] task Updating HEAD [ OK ] info Committed first revision signed d33bb1d31f0d12edacca40fe04eab0b87c5c1f76fc6888b33a91af819f65d2eb Operation finished. Checking hash for a head revision checkout task Checking out head revision inside '/tmp/test-project' [ RUNNING ] task Checking out head revision inside '/tmp/test-project' [ OK ] OK: 'd33bb1d31f0d12edacca40fe04eab0b87c5c1f76fc6888b33a91af819f65d2eb' was output by both commands 'av hash' and 'av hash /tmp/test-project' $ mkdir pack && echo fileC > pack/fileC $ mkdir mydir && echo fileD > mydir/fileD [?12l[?25h  info Committed revision 1 signed 30a5ef5bff1dd846 task Revision 1 checkout in folder ../../../../tmp/test-project-rev1 [ RUNNING ] task Revision 1 checkout in folder ../../../../tmp/test-project-rev1 [ OK ] OK: '30a5ef5bff1dd846ce2620d4644b6ae39be4157219f0332f592dc208a5653ec3' was output by both commands 'av hash' and 'av hash /tmp/test-project-rev1' $ echo extraline >> pack/fileC $ echo fileF >> pack/fileF # Creating a new file forced the time info of folder to be updated to a more recent one than before $ mkdir mydir2 # empty folder $ mkdir mydir3 && echo fileE > mydir3/fileE [?12l[?25h  info Committed revision 2 signed c667df019b356a4f task Revision 2 checkout in folder ../../../../tmp/test-project-rev2 [ RUNNING ] task Revision 2 checkout in folder ../../../../tmp/test-project-rev2 [ OK ] OK: 'c667df019b356a4fd9eb64f92af3ff773230120de70cd23294b966f27a6b159e' was output by both commands 'av hash' and 'av hash /tmp/test-project-rev2' task Checking out head revision inside '/tmp/test-project' [ RUNNING ] task Checking out head revision inside '/tmp/test-project' [ OK ] OK: 'c667df019b356a4fd9eb64f92af3ff773230120de70cd23294b966f27a6b159e' was output by both commands 'av hash' and 'av hash /tmp/test-project' task Revision 1 checkout in folder ../../../../tmp/test-project-rev1 [ RUNNING ] task Revision 1 checkout in folder ../../../../tmp/test-project-rev1 [ OK ] OK: '30a5ef5bff1dd846ce2620d4644b6ae39be4157219f0332f592dc208a5653ec3' was output by both commands 'cat /tmp/hasrev1' and 'av hash /tmp/test-project-rev1' [?12l[?25h getshot has finished. info EXECUTING PLAN 'listsources' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN listsources List the source folders stored in the repository STEP 1 10/26/26 12:45 Example of listing of the source folders stored in the repository info arcv run from riffian-dell, storage on riffian will be accessed via mountpoint /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK [?12l[?25h  task Creating archive version 0 [ RUNNING ] task Creating archive version 0 [ OK ] task Updating CHANGE_LOG [ RUNNING ] task Updating CHANGE_LOG [ OK ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ RUNNING ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ OK ] task Updating HEAD [ RUNNING ] task Updating HEAD [ OK ] info Committed first revision signed e2ef3ec464aa4cf33c0eefbe7cb7209c945741840b69b5ab879872c214ec135a Operation finished. info arcv run from riffian-dell, storage on riffian will be accessed via mountpoint /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK [?12l[?25h  task Creating archive version 0 [ RUNNING ] task Creating archive version 0 [ OK ] task Updating CHANGE_LOG [ RUNNING ] task Updating CHANGE_LOG [ OK ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ RUNNING ] task Cleaning archive version 0 : pruning empty folders, removing symlinks [ OK ] task Updating HEAD [ RUNNING ] task Updating HEAD [ OK ] info Committed first revision signed 7a2e8a4c3477ac710c9e1cd64405ed961a9b4c9a5e48bfc489c5a0a34c25f1d9 Operation finished. $ av list riffian 192.168.0.12(LAN) 82.65.58.13(public) test project of mine 0 7a2e8a4c3477ac71 26 Oct 12:45 michel (1000) 92K   │ test-project 0 e2ef3ec464aa4cf3 26 Oct 12:45 michel (1000) 68K   │ 160 KiB [?12l[?25h[?12l[?25h getshot has finished. info EXECUTING PLAN 'repoinfo' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN repoinfo Display all available internal repository information STEP 1 10/26/26 12:45 Example of display of all available internal repository information error test-project is not under revision-control in repository /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK [!p[?3;4l> OK: 255 returned by 'av repo' , is != of 0 [?12l[?25h   info Committed first revision ee4fba7633f22a17 $ av repo release-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases release-hooks No hook defined yet releases No release tag has been created yet latest-release-tag latest-release-rev exclude-file /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/EXCLUDE exclusions .nfs*,.swp*,RCS,SCCS,CVS,CVS.adm,RCSLOG,cvslog.*,tags,TAGS,.make.state,.nse_depi- nfo,*~,,*,_$*,*$,*.old,*.bak,*.BAK,*.orig,*.rej,.del-*,*.a,*.olb,*.o,*.obj,*.so,- *.exe,*.Z,*.elc,*.ln,core,.svn,.git,.hg,.bzr src-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/ rev-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive0 rev-hashfilepath /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive0/._arcv_sha256_test-project rev-hashfilename ._arcv_sha256_test-project head-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head head-image-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project head-rev 0 fetch-url git-repo /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/git size 72 KiB [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN repoinfo Display all available internal repository information STEP 2 10/26/26 12:45 Example of display of all repository information containing release information $ rm file_A.txt $ echo "Additional line for file B" >> file_B.txt Permission-only change:    info Committed revision 1 signed cd41e54c3f9f5098 $ av -y pub MYTAG:1 -m "A version tagged with 'MYTAG'" _inArcVersion: '1' info Going to create release tag MYTAG for revision 1 info Successfully created tag MYTAG for revision 1 $ av repo release-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases release-hooks No hook defined yet releases MYTAG 1 A version tagged with 'MYTAG' latest-release-tag MYTAG latest-release-rev 1 exclude-file /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/EXCLUDE exclusions .nfs*,.swp*,RCS,SCCS,CVS,CVS.adm,RCSLOG,cvslog.*,tags,TAGS,.make.state,.nse_depi- nfo,*~,,*,_$*,*$,*.old,*.bak,*.BAK,*.orig,*.rej,.del-*,*.a,*.olb,*.o,*.obj,*.so,- *.exe,*.Z,*.elc,*.ln,core,.svn,.git,.hg,.bzr src-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/ rev-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1 rev-hashfilepath /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1/._arcv_sha256_test-project rev-hashfilename ._arcv_sha256_test-project head-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head head-image-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project head-rev 1 fetch-url git-repo /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/git size 100 KiB [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN repoinfo Display all available internal repository information STEP 3 10/26/26 12:46 Example of display of repository information which identifying name contains keyword 'release' $ echo "Second additional line for file B" >> file_B.txt  info Committed revision 2 signed d484a502c7e416f3  info Committed revision 3 signed 28363c60b6b85952 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 3 info Successfully restored VERSION.txt from revison 3 $ av repo release latest-release-tag R1.0.0 latest-release-rev 3 releases R1.0.0 3 auto release MYTAG 1 A version tagged with 'MYTAG' release-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases release-hooks No hook defined yet [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN repoinfo Display all available internal repository information STEP 4 10/26/26 12:46 Example of display of repository information which identifying name contains keyword 'dir' $ av repo dir rev-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive3 release-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases src-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/ head-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head head-image-dir /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/head/test-project [?12l[?25h getshot has finished. info EXECUTING PLAN 'checkup2date' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN checkup2date Check for modifications in a source folder under revision control STEP 1 10/26/26 12:46 Example of checking for modification in a source folder under revision control $ arcv check || echo "OK, properly detected folder not under rev control" error test-project is not under revision-control in repository /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK [!p[?3;4l> OK, properly detected folder not under rev control $ av --silent -y || "Error: first commit failed" [?12l[?25h   info Committed first revision 5ccbe63b5ccbe06c $ arcv check --verbose || _exit -1 "Error: change detected and shouldn't have" Image is up-to-date. Revision is 0 OK: output of 'arcv check --verbose ' is correct $ echo "extended file a content" >> "file_A.txt" $ arcv check --verbose && _exit -1 "Error: No change detected whereas file_A.txt changed." || echo "OK, a change was detected" There are modified files for revision 0 [!p[?3;4l> OK, a change was detected $ arcv --silent -y co file_A.txt info Successfully restored file_A.txt from revison 0 $ echo "This is my file C data" >> "file_C.txt" $ arcv check --verbose && _exit -1 "Error: No change detected whereas file_C.txt added." || echo "OK, file C addition detected!" There are new files for revision 0 [!p[?3;4l> OK, file C addition detected! $ rm "file_C.txt" "file_A.txt" $ arcv check --verbose && _exit -1 "Error: No change detected whereas file_A.txt removed." || echo "OK, file A removal detected!" There are deleted files for revision 0 [!p[?3;4l> OK, file A removal detected! $ arcv --silent -y co file_A.txt info Successfully restored file_A.txt from revison 0 $ arcv check --verbose || _exit -1 "Error: change detected and shouldn't have" Image is up-to-date. Revision is 0 [?12l[?25h getshot has finished. info EXECUTING PLAN 'modifyfileperms' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN modifyfileperms Check-in and check-out a file which permissions change STEP 1 10/26/26 12:46 Example of check-in of file which permissions changed $ umask 002 [?12l[?25h   info Committed first revision 77e1003adfa94799 $ chmod 700 "file_A.txt" $ Test__assertCmd "ls -l file_A.txt | awk '{print \$1}'" "-rwx------" OK: output of 'ls -l file_A.txt | awk '{print $1}'' is correct $ arcv check --verbose && _exit -1 "Error: no change detected and should have" || echo "OK change detected" Permission-only change: file_A.txt : -rw-rw-r-- changed to -rwx------ There are changed permissions for files for revision 0 [!p[?3;4l> OK change detected $ arcv -y -m "Update file_A.txt with no access rights for others" info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash 77e1003adfa94799bce32574006a698b3629d20aed1b04ed5f296b439205c975) Permission-only change: file_A.txt : -rw-rw-r-- changed to -rwx------ Previous logs: 0 2026-10-26 12:46:32 Creation Commit: Folder /home/michel/test-arcv/test-project is going to backed up as revision 1 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1 info Committed revision 1 signed d1cd9e2aa6d094eb $ chmod 777 "file_A.txt" $ Test__assertCmd "ls -l file_A.txt | awk '{print \$1}'" "-rwxrwxrwx" OK: output of 'ls -l file_A.txt | awk '{print $1}'' is correct $ arcv check --verbose && _exit -1 "Error: no change detected and should have" || echo "OK change detected" Permission-only change: file_A.txt : -rwx------ changed to -rwxrwxrwx There are changed permissions for files for revision 1 [!p[?3;4l> OK change detected $ av -y co file_A.txt old file saved to '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/dropped/.#modified.1.20261026-1246.file_A.txt' info Successfully restored file_A.txt from revison 1 $ Test__assertCmd "ls -l file_A.txt | awk '{print \$1}'" "-rwx------" OK: output of 'ls -l file_A.txt | awk '{print $1}'' is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'modifydirperms' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN modifydirperms Check-in and check-out a directory which permissions change STEP 1 10/26/26 12:46 Example of check-in of directory which permissions changed $ umask 002 $ mkdir subdir $ echo "message" > subdir/testfile.txt [?12l[?25h   info Committed first revision 7be23cafc98b7109 $ chmod 700 "subdir" OK: output of 'ls -l -d subdir | awk '{print $1}'' is correct Permission-only change: ./subdir : drwxrwxr-x changed to drwx------ There are changed permissions for files for revision 0 [!p[?3;4l> av check: OK change detected $ arcv -y -m "Update subdir with no access rights for others" info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash 7be23cafc98b7109ee7364b11fa488495bb34aeaf2bec3ec76eaa4bd922c95ed) Permission-only change: ./subdir : drwxrwxr-x changed to drwx------ Previous logs: 0 2026-10-26 12:46:42 Creation Commit: Folder /home/michel/test-arcv/test-project is going to backed up as revision 1 inside: /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/test-project.archive1 info Committed revision 1 signed 7be23cafc98b7109 $ chmod 777 "subdir" OK: output of 'ls -l -d subdir | awk '{print $1}'' is correct $ arcv check --verbose && _exit -1 "Error: no change detected and should have" || echo "OK change detected" Permission-only change: ./subdir : drwx------ changed to drwxrwxrwx There are changed permissions for files for revision 1 [!p[?3;4l> OK change detected $ av -y co subdir info Successfully restored subdir from revison 1 OK: output of 'ls -l -d subdir | awk '{print $1}'' is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'remove_dir_after_modify_other_dir_perms' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN remove_dir_after_modify_other_dir_perms Check-in a directory which permissions change and then check-in removal of another folder STEP 1 10/26/26 12:46 Check-in of directory which permissions changed and then check-in removal of another folder $ umask 002 $ mkdir subdir1 $ mkdir subdir2 $ mkdir subdir3 $ mkdir subdir4 [?12l[?25h   info Committed first revision 0e3d5aa0c551a673 $ chmod 700 "subdir2" OK: output of 'ls -l -d subdir2 | awk '{print $1}'' is correct Permission-only change: ./subdir2 : drwxrwxr-x changed to drwx------ There are changed permissions for files for revision 0 [!p[?3;4l> av check: OK change detected Permission-only change: ./subdir2 : drwxrwxr-x changed to drwx------  info Committed revision 1 signed 0e3d5aa0c551a673 $ rmdir subdir1 $ av check --verbose There are deleted files for revision 1 [!p[?3;4l> Now checking output, only deleted file should be reported $ av check --verbose > "/tmp/checkinstatus.txt" [!p[?3;4l> OK '/tmp/checkinstatus.txt' last line is correct ('There are deleted files for revision 1') $ chmod 777 "subdir2" OK: output of 'ls -l -d subdir2 | awk '{print $1}'' is correct $ av -y co subdir2 info Successfully restored subdir2 from revison 1 OK: output of 'ls -l -d subdir2 | awk '{print $1}'' is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'listmodifiedfiles' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN listmodifiedfiles List any file change in a source folder (new/deleted/modified/permissions) STEP 1 10/26/26 12:47 Example of listing changes in a source folder $ umask 002 $ echo "file C" >> file_C.txt [?12l[?25h   info Committed first revision 9abd2730cc1c79e7 $ chmod 700 "file_A.txt" $ rm file_B.txt $ echo "Second line file file C" >> file_C.txt $ echo "file D" >> file_D.txt Permission-only change: file_A.txt : -rw-rw-r-- changed to -rwx------ There are new, deleted, modified, changed permissions for files for revision 0 [!p[?3;4l> OK change detected $ Test__assertCmd "ls -l file_A.txt | awk '{print \$1}'" "-rwx------" OK: output of 'ls -l file_A.txt | awk '{print $1}'' is correct $ av -l info SRC: /home/michel/test-arcv/test-project info REV: 0 (hash 9abd2730cc1c79e7231166f6d98975138ac6e14666ada37e5e084c2c1b82f4f0) Changed: file_C.txt New: file_D.txt Deleted: file_B.txt Permission-only change: file_A.txt : -rw-rw-r-- changed to -rwx------ OK: 'av -l' output is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'compare' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN compare Comparing revisions STEP 1 10/26/26 12:47 Sample scenarios of comparing revisions using simple diff tool [?12l[?25h   info Committed first revision 1813e98cc79beaa9  info Committed revision 1 signed d5af6acf9897bb98 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 info Successfully restored VERSION.txt from revison 1 $ echo "This is the second line of file A" >> "file_A.txt"  info Committed revision 2 signed 6869ffac02a85f39 $ echo "This is the third line of file A" >> "file_A.txt"  info Committed revision 3 signed 53e78578c543dcf2 $ echo "This is the fourth line of file A (not committed)" >> "file_A.txt" # Not committed $ av diff --fmt=plain > diffresult.txt # diff current vs head [!p[?3;4l> OK 'diffresult.txt' last line is correct ('> This is the fourth line of file A (not committed)') $ av diff 2 --fmt=plain > diffresult.txt # diff current vs revision 2 preceeding head [!p[?3;4l> OK 'diffresult.txt' line 5 is correct ('> This is the third line of file A') OK 'diffresult.txt' line 6 is correct ('> This is the fourth line of file A (not committed)') $ av diff R1.0.0 --fmt=plain > diffresult.txt # diff current vs release tag R1.0.0 [!p[?3;4l> OK 'diffresult.txt' line 4 is correct ('> This is the second line of file A') OK 'diffresult.txt' line 5 is correct ('> This is the third line of file A') OK 'diffresult.txt' line 6 is correct ('> This is the fourth line of file A (not committed)') $ av diff headvs2 --fmt=plain > diffresult.txt # diff head and revision 2 [!p[?3;4l> OK 'diffresult.txt' last line is correct ('< This is the third line of file A') $ av diff 2vs0 --fmt=plain > diffresult.txt # diff rev 1 and 0 [!p[?3;4l> OK 'diffresult.txt' last line is correct ('< This is the second line of file A') $ av diff 1vs0 --fmt=plain | grep 'Only in' | grep 'VERSION.txt' > diffresult.txt [!p[?3;4l> OK 'diffresult.txt' content is correct ('^Only in.+VERSION\.txt') $ av diff 3vsR1.0.0 --fmt=plain > diffresult.txt # diff rev 3 and tag 1.0.0 [!p[?3;4l> OK 'diffresult.txt' line 3 is correct ('< This is the second line of file A') OK 'diffresult.txt' line 4 is correct ('< This is the third line of file A') [?12l[?25h getshot has finished. info EXECUTING PLAN 'compareatcheckin' warning Live recording skipped for 'Example of checking changes at check-in' since interactive mode disabled info EXECUTING PLAN 'reltag' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN reltag Creating a release tag for a head revision ('publish') STEP 1 10/26/26 12:47 Example of release tag creation for head revision [?12l[?25h   info Committed first revision 32ced74a118c0774 $ av -yy pub -m "A test release 1.0.0" || _exit -1 "Failed to create release tag" info SRC: /home/michel/test-arcv/test-project info test-project is the first archived version info No change in source  info Committed revision 1 signed 30b688dc65bce534 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 There are modified files for revision 1 [!p[?3;4l> OK change detected OK '/home/michel/test-arcv/test-project/VERSION.txt' content is correct ('1.0.1') OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases/R1.0.0' points to ../test-project.archive1 OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases/R1.0.0.log' content is correct ('A test release 1.0.0') Committing changes after tagging $ rm file_A.txt $ echo "Additional line for file B" >> file_B.txt Permission-only change:    info Committed revision 2 signed b0a86d06cb7f158a $ av log 2 2026-10-26 12:47:40 Changed file A and B state before checking out release 1 2026-10-26 12:47:37 Added /home/michel/test-arcv/test-project/VERSION.txt while requesting creation  of release tag 0 2026-10-26 12:47:36 Creation Now checking out release tagged 1.0.0 and check if original file A and B OK $ av co R1.0.0 -o /tmp task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ OK ] OK 'VERSION.txt' content is correct ('1.0.0') OK 'file_A.txt' content is correct ('Test file A') OK 'file_B.txt' content is correct ('Test file B') [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN reltag Creating a release tag for a head revision ('publish') STEP 2 10/26/26 12:47 Example of tag creation to a random revision [?12l[?25h   info Committed first revision d25f4457fa63392f Committing changes BEFORE tagging $ rm file_A.txt $ echo "Additional line for file B" >> file_B.txt Permission-only change:    info Committed revision 1 signed 58b71c7d9a71f530 $ av -yy pub MYTAG:1 -m "A version tagged with 'MYTAG'" || _exit -1 "Failed to create release tag" _inArcVersion: '1' info Going to create release tag MYTAG for revision 1 info Successfully created tag MYTAG for revision 1 Image is up-to-date. Revision is 1 Now checking existing of tag symlink and tag log OK: '/home/michel/test-arcv/test-project/VERSION.txt': not there OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases/MYTAG' points to ../test-project.archive1 OK '/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/releases/MYTAG.log' content is correct ('A version tagged with 'MYTAG'')  info Committed revision 2 signed d0f6bf1e499f73a3  info Committed revision 3 signed 57bcccc677310c48 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 3 $ av rel R1.0.0 3 Release after second changes MYTAG 1 A version tagged with 'MYTAG' OK: 'av rel --fmt=plain' output is correct Now checking out MYTAG and check file B and A is not there. $ av co MYTAG -o /tmp task Release MYTAG checkout in folder ../../../../tmp/test-project-MYTAG [ RUNNING ] task Release MYTAG checkout in folder ../../../../tmp/test-project-MYTAG [ OK ] OK: 'file_A.txt': not there OK: 'file_C.txt': not there OK 'file_B.txt' last line is correct ('Additional line for file B') Now checking out release tagged 1.0.0 and check if original file A and B OK $ av co R1.0.0 -o /tmp task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ OK ] OK 'VERSION.txt' content is correct ('1.0.0') OK: 'file_A.txt': not there OK 'file_C.txt' content is correct ('This is new file C') OK 'file_B.txt' last line is correct ('Second additional line for file B') [?12l[?25h getshot has finished. info EXECUTING PLAN 'hook' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN hook Create a hook for executing a program after release tag creation STEP 1 10/26/26 12:47 Example of creating a hook for executing a program after release tag creation [?12l[?25h   info Committed first revision 8a29b54dfdac34f0 $ av hook myhook.sh info Successfully created release hook applying from revision 0, executable set for 'myhook.sh' $ av -yy pub -m "A test release 1.0.0" || _exit -1 "Failed to create release tag" info SRC: /home/michel/test-arcv/test-project info test-project is the first archived version info Source changed according to new hash 766223e10f511ab54d16ff35289edae1982f74289d2c84625eeb2ee423bbac14 Permission-only change: myhook.sh : -rw-rw-r-- changed to -rwxrwxr-x  info Committed revision 1 signed 4d04ce3d100d9ca6 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 info Executing release hook ''myhook.sh'' Now checking that file hook.proof was actually created by the hook script OK 'hook.proof' content is correct ('R1.0.0') $ arcv hook 0 'myhook.sh' OK: output of 'arcv hook --fmt=plain' is correct [?12l[?25h getshot has finished. info EXECUTING PLAN 'branch' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN branch Create branches STEP 1 10/26/26 12:48 Example of branch creation from head revision, random revisions and release tag [?12l[?25h   info Committed first revision d836671478e28b52  info Committed revision 1 signed 416f22e0e2fe7864 info Created VERSION.txt info Going to create release tag R1.0.0 info Successfully created release tag R1.0.0 for revision 1 info Successfully restored VERSION.txt from revison 1  info Committed revision 2 signed 2d36cf9b56a18f53  info Committed revision 3 signed 94d8a65634725d2e $ av --silent -y branch fun-project info The branch is going to be created in a folder '../fun-project' from head revision 3 [!p[?3;4l> task Branch creation in folder ../fun-project [ RUNNING ] task Branch creation in folder ../fun-project [ OK ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ RUNNING ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ OK ] OK '/tmp/diffresult.txt' last line is correct ('< This is the fourth line of file A (not committed)') $ av --silent -y branch fun-project:2 info The branch is going to be created in a folder '../fun-project' from revision 2 [!p[?3;4l> task Branch creation in folder ../fun-project [ RUNNING ] task Branch creation in folder ../fun-project [ OK ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ RUNNING ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ OK ] OK '/tmp/diffresult.txt' line 3 is correct ('< This is the third line of file A') OK '/tmp/diffresult.txt' line 4 is correct ('< This is the fourth line of file A (not committed)') $ av --silent -y branch fun-project:R1.0.0 info The branch is going to be created in a folder '../fun-project' from revision 3 [!p[?3;4l> task Branch creation in folder ../fun-project [ RUNNING ] task Branch creation in folder ../fun-project [ OK ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ RUNNING ] task Branch 'fun-project' commit in '/home/michel/test-arcv/fun-project' [ OK ] OK '/tmp/diffresult.txt' line 3 is correct ('< This is the second line of file A') OK '/tmp/diffresult.txt' line 4 is correct ('< This is the third line of file A') OK '/tmp/diffresult.txt' line 5 is correct ('< This is the fourth line of file A (not committed)') $ av --silent -y branch fun-project:0 -o /tmp/ info The branch is going to be created in a folder '/tmp/fun-project' from revision 0 [!p[?3;4l> task Branch creation in folder ../../../../tmp/fun-project [ RUNNING ] task Branch creation in folder ../../../../tmp/fun-project [ OK ] task Branch 'fun-project' commit in '/tmp/fun-project' [ RUNNING ] task Branch 'fun-project' commit in '/tmp/fun-project' [ OK ] $ av --silent -y co R1.0.0 -o /tmp/ task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ RUNNING ] task Release R1.0.0 checkout in folder ../../../../tmp/test-project-R1.0.0 [ OK ] $ [ "$(cat /tmp/diffresult.txt)" = "Only in /tmp/test-project-R1.0.0: VERSION.txt" ] && echo "OK diff is OK" || (sleep 1 && _exit -1 "Error: unexpected differences found!") OK diff is OK [?12l[?25h getshot has finished. info EXECUTING PLAN 'tarball' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN tarball Exporting a revision as a tarball STEP 1 10/26/26 12:48 Example of tarball export for head revision, modified head revision and random revision [?12l[?25h   info Committed first revision 51dd076430b3d637 $ av tarball -o /tmp info Successfully created /tmp/test-project-0.tar.gz OK: '/tmp/test-project-0.tar.gz': present $ echo "Extra line for file A" >> "file_A.txt" $ av tarball -o /tmp [!p[?3;4l> info Successfully created /tmp/test-project-0M-20261026.tar.gz OK: '/tmp/test-project-0M-20261026.tar.gz': present  info Committed revision 1 signed e7956b42d6699ae5 $ av tarball head -o /tmp info Successfully created /tmp/test-project-1.tar.gz OK: '/tmp/test-project-1.tar.gz': present $ av tarball 0 -o /home/michel info Successfully created /home/michel/test-project-0.tar.gz OK: '/home/michel/test-project-0.tar.gz': present $ echo "Extracting all tarballs before check" Extracting all tarballs before check $ diff -r /tmp/test-project-0M /tmp/test-project-1 || _exit -1 "Extracts 0M and 1 should be the same" $ diff -r /tmp/test-project-0 /tmp/test-project-1 && _exit -1 "Extracts 0 and 1 should not be the same" || echo "OK, Extracts 0 and 1 are different" diff -r /tmp/test-project-0/test-project/file_A.txt /tmp/test-project-1/test-project/file_A.txt 1a2 > Extra line for file A OK, Extracts 0 and 1 are different [?12l[?25h getshot has finished. info EXECUTING PLAN 'github' ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN github Exporting a revision to GitHub STEP 1 10/26/26 12:48 Example of export to GitHub of head revision [?12l[?25h   info Committed first revision a6fe0d93766c4957 $ echo "Copyright (c) Frog Goodfrog" > COPYRIGHT.txt $ echo "1.1.0" > VERSION.txt $ echo "git@github.com:michelm33/test-project.git" > GITHUB.txt  info Committed revision 1 signed 2f839d084e60cbd0 1 2026-10-26 12:48:45 adding files required to export 0 2026-10-26 12:48:44 Creation $ av -yy export Going to export to GitHub RemoteRepository: git@github.com:michelm33/test-project.git User: Michel MEHL Email: michel.mehl@slashetc.fr warning Arcv__getProductName: /home/michel/test-arcv/test-project/test-project does not exist or not executable. Using folder name 'test-project' info Successfully clone task Updating content of /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/git from /home/michel/test-arcv/test-project [ RUNNING ] task Updating content of /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/git from /home/michel/test-arcv/test-project [ OK ] On branch main Your branch is up to date with 'origin/main'. Changes not staged for commit: (use "git add/rm ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: VERSION.txt deleted: file_C.txt no changes added to commit (use "git add" and/or "git commit -a") [?12l[?25h  info Git adding files info Git commit files [main fc77aa1] adding files required to export 2 files changed, 1 insertion(+), 2 deletions(-) delete mode 100644 file_C.txt info Git pushing to origin X11 forwarding request failed on channel 0 To github.com:michelm33/test-project.git 8def065..fc77aa1 main -> main [?12l[?25h getshot has finished. ************************************************************************** TESTED APP arcv 2.0.0 rev:397 hash:c2611dc49f82084f /usr/bin/arcv/arcv TEST BENCH arcv-test 2.0.0 rev:269 hash:6316b8b5ecbeb6ab /usr/bin/arcv-test/arcv-test SHELL API 1.2.0 rev:267 hash:540b647815f09cf0 /usr/bin/shell-api-1.2-0/genapp SHOTPLAN shotplan 1.1.3 rev:104 hash:50b02b80dc1f399b /usr/bin/shotplan/shotplan PLAN github Exporting a revision to GitHub STEP 2 10/26/26 12:48 Example of export to GitHub of a random release directory $ cp -r test-project /tmp/test-project-release-1.1.1 $ echo "New file C" > /tmp/test-project-release-1.1.1/file_C.txt $ echo "1.1.1" > /tmp/test-project-release-1.1.1/VERSION.txt $ av -yy export /tmp/test-project-release-1.1.1 Going to export to GitHub RemoteRepository: git@github.com:michelm33/test-project.git User: Michel MEHL Email: michel.mehl@slashetc.fr warning Arcv__getProductName: /home/michel/test-arcv/test-project/test-project does not exist or not executable. Using folder name 'test-project' task Updating content of /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/git from /tmp/test-project-release-1.1.1 [ RUNNING ] task Updating content of /home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK/test-project.archive/git from /tmp/test-project-release-1.1.1 [ OK ] On branch main Your branch is up to date with 'origin/main'. Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: VERSION.txt Untracked files: (use "git add ..." to include in what will be committed) file_C.txt no changes added to commit (use "git add" and/or "git commit -a") [?12l[?25h  info Git adding files info Git commit files [main 1772996] adding files required to export 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 file_C.txt info Git pushing to origin X11 forwarding request failed on channel 0 To github.com:michelm33/test-project.git fc77aa1..1772996 main -> main [?12l[?25h getshot has finished. ************************************************************************** OVERALL RESULT: OK ************************************************************************** - arcv_checkoutfile_1 [ RUNNING ]  - arcv_checkoutfile_1 [ OK ] - arcv_compareatcheckin_1 [ RUNNING ]  - arcv_compareatcheckin_1 [ OK ] - arcv_checkoutsource_1 [ RUNNING ]  - arcv_checkoutsource_1 [ OK ] - arcv_checkoutreltag_1 [ RUNNING ]  - arcv_checkoutreltag_1 [ OK ] - arcv_checkoutsource_2 [ RUNNING ]  - arcv_checkoutsource_2 [ OK ] - arcv_hook_1 [ RUNNING ]  - arcv_hook_1 [ OK ] - arcv_push-uri_1 [ RUNNING ]  - arcv_push-uri_1 [ OK ] - arcv_checkoutsource_3 [ RUNNING ]  - arcv_checkoutsource_3 [ OK ] - arcv_checkoutsource_4 [ RUNNING ]  - arcv_checkoutsource_4 [ OK ] - arcv_source-uri_1 [ RUNNING ]  - arcv_source-uri_1 [ OK ] - arcv_source-uri_3 [ RUNNING ]  - arcv_source-uri_3 [ OK ] - arcv_source-uri_2 [ RUNNING ]  - arcv_source-uri_2 [ OK ] - arcv_source-uri_5 [ RUNNING ]  - arcv_source-uri_5 [ OK ] - arcv_source-uri_4 [ RUNNING ]  - arcv_source-uri_4 [ OK ] - arcv_init_1 [ RUNNING ]  - arcv_init_1 [ OK ] - arcv_branch_1 [ RUNNING ]  - arcv_branch_1 [ OK ] - arcv_github_2 [ RUNNING ]  - arcv_github_2 [ OK ] - arcv_addfiles_1 [ RUNNING ]  - arcv_addfiles_1 [ OK ] - arcv_circular_1 [ RUNNING ]  - arcv_circular_1 [ OK ] - arcv_commitinterval_1 [ RUNNING ]  - arcv_commitinterval_1 [ OK ] - arcv_circular_2 [ RUNNING ]  - arcv_circular_2 [ OK ] - arcv_github_1 [ RUNNING ]  - arcv_github_1 [ OK ] - arcv_circular_3 [ RUNNING ]  - arcv_circular_3 [ OK ] - arcv_listsources_1 [ RUNNING ]  - arcv_listsources_1 [ OK ] - arcv_displayhash_1 [ RUNNING ]  - arcv_displayhash_1 [ OK ] - arcv_circular-save_1 [ RUNNING ]  - arcv_circular-save_1 [ OK ] - arcv_checkoutheadrev_1 [ RUNNING ]  - arcv_checkoutheadrev_1 [ OK ] - arcv_forcecommit_1 [ RUNNING ]  - arcv_forcecommit_1 [ OK ] - arcv_checkup2date_1 [ RUNNING ]  - arcv_checkup2date_1 [ OK ] - arcv_checkoutrev_1 [ RUNNING ]  - arcv_checkoutrev_1 [ OK ] - arcv_tarball_1 [ RUNNING ]  - arcv_tarball_1 [ OK ] - arcv_checkoutfile_with_removed_files_1 [ RUNNING ]  - arcv_checkoutfile_with_removed_files_1 [ OK ] - arcv_spacechars_1 [ RUNNING ]  - arcv_spacechars_1 [ OK ] - arcv_displaychangelog_2 [ RUNNING ]  - arcv_displaychangelog_2 [ OK ] - arcv_displaychangelog_1 [ RUNNING ]  - arcv_displaychangelog_1 [ OK ] - arcv_remove_dir_after_modify_other_dir_perms_1 [ RUNNING ]  - arcv_remove_dir_after_modify_other_dir_perms_1 [ OK ] - arcv_checkhash_1 [ RUNNING ]  - arcv_checkhash_1 [ OK ] - arcv_displayfilelog_menu_1 [ RUNNING ]  - arcv_displayfilelog_menu_1 [ OK ] - arcv_displayfilelog_av_1 [ RUNNING ]  - arcv_displayfilelog_av_1 [ OK ] - arcv_repoinfo_4 [ RUNNING ]  - arcv_repoinfo_4 [ OK ] - arcv_repoinfo_3 [ RUNNING ]  - arcv_repoinfo_3 [ OK ] - arcv_reltag_1 [ RUNNING ]  - arcv_reltag_1 [ OK ] - arcv_repoinfo_2 [ RUNNING ]  - arcv_repoinfo_2 [ OK ] - arcv_reltag_2 [ RUNNING ]  - arcv_reltag_2 [ OK ] - arcv_repoinfo_1 [ RUNNING ]  - arcv_repoinfo_1 [ OK ] - arcv_displaylog_2 [ RUNNING ]  - arcv_displaylog_2 [ OK ] - arcv_displaylog_1 [ RUNNING ]  - arcv_displaylog_1 [ OK ] - arcv_displayreleaselog_1 [ RUNNING ]  - arcv_displayreleaselog_1 [ OK ] - arcv_displaylog_menu_1 [ RUNNING ]  - arcv_displaylog_menu_1 [ OK ] - arcv_displayreleaselog_menu_1 [ RUNNING ]  - arcv_displayreleaselog_menu_1 [ OK ] - arcv_exclusions_1 [ RUNNING ]  - arcv_exclusions_1 [ OK ] - arcv_checkoutdirfromrev_1 [ RUNNING ]  - arcv_checkoutdirfromrev_1 [ OK ] - arcv_displayrev_1 [ RUNNING ]  - arcv_displayrev_1 [ OK ] - arcv_displayfilelog_1 [ RUNNING ]  - arcv_displayfilelog_1 [ OK ] - arcv_modifyfiles_1 [ RUNNING ]  - arcv_modifyfiles_1 [ OK ] - arcv_modifydirperms_1 [ RUNNING ]  - arcv_modifydirperms_1 [ OK ] - arcv_removefiles_1 [ RUNNING ]  - arcv_removefiles_1 [ OK ] - arcv_listmodifiedfiles_1 [ RUNNING ]  - arcv_listmodifiedfiles_1 [ OK ] - arcv_checkoutfilefromrev_1 [ RUNNING ]  - arcv_checkoutfilefromrev_1 [ OK ] - arcv_inspect_init_1 [ RUNNING ]  - arcv_inspect_init_1 [ OK ] - arcv_compare_1 [ RUNNING ]  - arcv_compare_1 [ OK ] - arcv_modifyfileperms_1 [ RUNNING ]  - arcv_modifyfileperms_1 [ OK ] Press a key to exit[?12l[?25h Shotplan has finished. info Executing '/usr/bin/arcv-test/posttest.sh' EXECUTING POST-TEST SCRIPT. REPODIR='/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK' Successfully change operation config file to riffian/Data/Data/admin/linux/configs/arcv.yml UNMOUNTING'/home/michel/.mnt-arcv-F5UG63LFF5WWSY3IMVWC65DNOAXWC4TDOYWXIZLTOQWWC4TDNBUXMZIK'