-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
makepipe compatible with git workflows? #48
Comments
Hey Lukas, thanks for the question. This is a delicate problem since in many instances the current behavior is desired. Imagine you modify You get the same behavior with Note however that when you do a checkout, All that being said, I do see the motivation for a workaround here. I suppose one option would be to add a function to neutralize the effect of a git-checkout by updating the modification times of all the targets to the current time. So after Another would be to hash and cache everything and then compare hashes. However this would mean adding a |
I've added a p <- get_pipeline()
p$touch() to update the file modification of all targets to the current time. This effectively 'forces' all targets into an up-to-date state. You can use it any time you know your targets are up-to-date but, for whatever reason, the file mtimes are out of whack. Edit: will be in next release |
Thanks @kinto-b ! Sorry I didn't reply earlier, your answer is much appreciated, there was just nothing to add from my side to your answer. Thanks also for providing this workaround. Best, Lukas |
Hi!
thanks for the package! :)
I am trying to understand if I can use this package within a git workflow.
As far as I understand, the package is using the file modification dates to determine if a target should be remade or not, and it seems that this causes problems when storing the script files in a git repository. Git itself does not control the file modification time, so any time a checkout/something similar happends, the file modification date is adjusted (even though no meaningful modification might occur).
Are there any recommendations on how to use the package with R scripts within a git repository to support "correct" make behavior?`
Thanks!
The text was updated successfully, but these errors were encountered: