You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Assume I've a checked out stage with file set/a1.txt and set/a2.txt
I set a git tag "1and2" for that version.
Now I add set/a3.txt and commit+push via dud. And also commit&push via git.
Next I checkout the "1and2" tag via git and want to update the symlinks.
I did dud fetch & dud checkout but the a3.txt file still exists. I had to delete the set folder and do dud fetch & dud checkout to get it updated. Probably there is a smarter way?
My response:
You have correctly identified the (currently) recommended way to handle this situation: Delete the old directory/files before checkout. I realize this is not ideal or streamlined, though.
I would like to improve this scenario by adding a checkout --rm flag that would delete the relevant artifacts for you prior to the checkout operation. I'm not sure if this would help your situation though, as it seems you are tracking individual files and not a directory. If you're changing a stage's artifacts across commits, Dud does not interrogate Git for past versions of a stage file, so it doesn't know which files were previously tracked or not. However, if you're tracking the entire set directory, checkout --rm would delete the entire directory before checking it out, thus fixing this issue.
I purposefully did not make checkout --rm the default behavior because it adds side effects to the checkout operation. Maintaining simplicity in Dud is a core principle for me.
The text was updated successfully, but these errors were encountered:
Discussed in #150
OP:
My response:
The text was updated successfully, but these errors were encountered: