I have an existing project that was initialized at the git root with a single .dvc directory.
Are there going to be any gotchas or unexpected behavior if I want to refactor this by running “dvc init --subdir” in a couple of subdirectories to create subprojects with their own cache directories and remotes? If I understand things correctly, I can:
- Update my cache and ensure no one will push changes to remote while the steps below are done
dvc init --subdirin a subdirectory that I want to turn into a subproject
- Set cache dir to the same as the root project, set the remote to the new remote for this subproject
dvc pushto copy current versions of all files in the subproject to the new remote
- Change subproject cache dir to its new path
- git commit and push
Anything I’m missing?
One confusing issue will be that dvc commands will have a different scope depending whether a developer is on a commit upstream or downstream from this change.