Right now it's not very intuitive what rollop clean and rollop <command> --clean do.
What they should do is remove anything generated by the command that isn't a dependency.
This is still sometimes tricky, e.g. rollop l1 can cause a deploy config to be generated when it does not exist, but that file can also be generated by rollop l2. In those cases, the file should not be deleted, or only be deleted if we pass an special flag (e.g. --clean-shared).
It could also be good to add flags or commands that remove other things, for instance:
- build outputs of the cloned repos
- any fetched dependencies (binaries, cloned repos)
These are even more shared and tricky. Maybe the solution is to give every dependency a name, and allow to selectively "clean" or "remove" them.
We might even want to give them "groups" (basically a reverse mapping from dependency to command) so that we can "clean" or "remove" every dependency used by a command.
Whatever gets done should be documented clearly in the help and in the README.
Right now it's not very intuitive what
rollop cleanandrollop <command> --cleando.What they should do is remove anything generated by the command that isn't a dependency.
This is still sometimes tricky, e.g.
rollop l1can cause a deploy config to be generated when it does not exist, but that file can also be generated byrollop l2. In those cases, the file should not be deleted, or only be deleted if we pass an special flag (e.g.--clean-shared).It could also be good to add flags or commands that remove other things, for instance:
These are even more shared and tricky. Maybe the solution is to give every dependency a name, and allow to selectively "clean" or "remove" them.
We might even want to give them "groups" (basically a reverse mapping from dependency to command) so that we can "clean" or "remove" every dependency used by a command.
Whatever gets done should be documented clearly in the help and in the README.