I cant repeat on Linux or dont understand repeat script correctly.
These steps in a empty repo show it for me
> pijul init
> mkdir ignore
> echo "ignore/" > .ignore
> echo "hello world" > .\ignore\hello.txt
> pijul add .\.ignore .\ignore\hello.txt
> pijul diff
message = ''
timestamp = '2021-01-21T07:33:28.578708200Z'
authors = []
# Hunks
1. File addition: "ignore\\hello.txt" in "/" 755
up 1.0, new 0:18
+ hello world
2. File addition: ".ignore" in "/" 755
up 1.0, new 34:43
+ ignore/
> pijul record -m 'first step'
Hash: K5MPFGLAFJCMLAZAPCO66FWZ6VT32BGD2FIVVGDJ6QAZKJH6CBEAC
> pijul diff
message = ''
timestamp = '2021-01-21T07:34:06.512918300Z'
authors = []
# Dependencies
[2] K5MPFGLAFJCMLAZAPCO66FWZ6VT32BGD2FIVVGDJ6QAZKJH6CBEAC
# Hunks
1. Moved: "ignore\\hello.txt" "ignore\\hello.txt" 755 1.0
BF:BFD 1.0 -> 2.0:19/2
up 1.0, down 2.20
no output on last pijul diff
on Linux.
Hmm, might be Windows only then, thanks for taking a look.
This might be a problem related to the path component delimiter. It should be normalized before comparing to the entries in the .ignore file.
I know it’s been a while, but I’m triaging the discussions in order to try and move to beta soon.
Is this still a problem? We had a patch some time ago to normalise path separators and permissions on both Linux and Windows, I believe this could have fixed this issue.
I can’t reproduce it anymore with alpha 53, looks like it’s been fixed 👍
I’m seeing this with alpha 36 on Windows, if I add a file in a folder that is listed in the
.ignore
file the firstrecord
behaves normally, but every subsequentdiff
/record
shows the files as being moved to their existing location. Even if I record the change, it shows up again afterwards.This is what I see every time with these rules (that are suggested for VSCode)
Even without the “exemption rules”, simply adding a file inside an ignored folder is enough to trigger it for me.