Because of a restructuring of my project I had to rename a lot of
files.While doing so I accidently 'fossil rename'd on of the files to the
wrong (but existing) new file. I found this out when I wanted to rename the
correct file which was no longer allowed:
SQLITE_CONSTRAINT: abort at 42 in [UPDATE vfile SET pathname='newfile2.txt'
WHERE pathname='oldfile2.txt' AND vid=3]: columns pathname, vid are not
unique
 
I can understand this error message but I had a very hard time finding out
which file was renamed wrongly to be able correct this. In the end I looked
in the __FOSSIL__ file for 
       select *  from vfile where pathname <> origname
to solve my mistake.
 
Bottom line: what a about a --verbose switch to the 'fossil changes' command
that also lists the original filename for renames?
 
On windows the problem can be reproduced with:
 
fossil init test.fossil
fossil open test.fossil
echo Hello World > oldfile1.txt
fossil add oldfile1.txt
echo Hello World > oldfile2.txt
fossil add oldfile2.txt
fossil commit -m "First commit"
rename oldfile1.txt newfile1.txt
rename oldfile2.txt newfile2.txt
REM Notice the typo in the next line, it should have been newfile2
fossil mv oldfile1.txt newfile2.txt
REM
fossil mv oldfile2.txt newfile2.txt
fossil changes
 
 
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to