The sound distributed version control system

#895 [PARTIAL, CLONE] if provide invalid path it clones everything

Opened by tankf33der on March 6, 2024
tankf33der on March 6, 2024

Question: is this a problem and fix if so.

$ pijul init p1
$ cd p1

$ mkdir a
$ cd a
$ touch a
$ pijul add a
$ pijul rec -am.
$ echo "2" >> a
$ pijul rec -am.

$ cd ..
$ mkdir b
$ cd b
$ touch b
$ pijul add b
$ pijul rec -am.
$ cd ..
$ cd ..

$ pijul clone --path a p1 p1a
$ pijul clone --path b p1 p1b
$ pijul clone --path c p1 p1c

$ find p1a/.pijul/changes -type f
p1a/.pijul/changes/EK/2DSSXQFZP3TTVO5ZJMM7FSEQS25Q5ZKE54A3DIA2WCMNUSE3SQC.change
p1a/.pijul/changes/MC/V56R4FGQX542FCTTEYUC7LZ4QVBI4Q7EZ4G4I6X3TVFJQD53QQC.change
p1a/.pijul/changes/UH/CSQ5QWIKRIOMTCW424OJ2U2M2HTLRZDFANWAWS4ZKER4CVIAUAC.change

$ find p1b/.pijul/changes -type f
p1b/.pijul/changes/RQ/F2DU5VP2X3S6RGOS6PQOTL4B7TXFOC4BSRHFU3TJURHDVMXHUAC.change
p1b/.pijul/changes/EK/2DSSXQFZP3TTVO5ZJMM7FSEQS25Q5ZKE54A3DIA2WCMNUSE3SQC.change

$ find p1c/.pijul/changes -type f
p1c/.pijul/changes/RQ/F2DU5VP2X3S6RGOS6PQOTL4B7TXFOC4BSRHFU3TJURHDVMXHUAC.change
p1c/.pijul/changes/EK/2DSSXQFZP3TTVO5ZJMM7FSEQS25Q5ZKE54A3DIA2WCMNUSE3SQC.change
p1c/.pijul/changes/MC/V56R4FGQX542FCTTEYUC7LZ4QVBI4Q7EZ4G4I6X3TVFJQD53QQC.change
p1c/.pijul/changes/UH/CSQ5QWIKRIOMTCW424OJ2U2M2HTLRZDFANWAWS4ZKER4CVIAUAC.change

# hashes are correct

# how is it possible that cloning to p1b is correct - only two records -  
# but cloning to p1c does NOT understand which record is not his. 
tankf33der on March 6, 2024

I will use this as test scenario.