Moving from treeverse/dvc.org#735 (comment)
$ dvc version
DVC version: 0.65.0
Python version: 3.7.4
Platform: Darwin-19.0.0-x86_64-i386-64bit
Binary: False
When you import a specific revision that doesn't change, for example a tag like:
$ dvc import --rev cats-dogs-v1 \
git@github.com:iterative/dataset-registry.git \
use-cases/cats-dogs
Importing 'use-cases/cats-dogs (git@github.com:iterative/dataset-registry.git)' -> 'cats-dogs'
Output 'cats-dogs' didn't change. Skipping saving.
Saving information to 'cats-dogs.dvc'.
$ ls
total 8
drwxr-xr-x 3 usr staff 96B Oct 22 14:05 cats-dogs/
-rw-r--r-- 1 usr staff 340B Oct 22 14:05 cats-dogs.dvc
And then you try to update, nothing changes because the rev never moves. However dvc update output doesn't really signal this, in fact it says "Saving information..." as if something happened:
$ dvc update cats-dogs.dvc
Saving information to 'cats-dogs.dvc'.
Although this is correct update behavior (as explained in treeverse/dvc.org#735 (comment)), maybe the output could be different when it detects a fixed rev field in the DVC-file, and this rev hasn't changed. It could give an INFO message to suggest the user may have to re-import instead of updating. Something like:
$ dvc update cats-dogs.dvc
NOTE: The 'cats-dogs.dvc' import stage is fixed to revision 'cats-dogs-v1'
and this Git reference has not moved. You may want to re-import 'cats-dogs.dvc'
to un-fix it, instead of trying to update it.
When you import a specific revision that doesn't change, for example a tag like:
And then you try to update, nothing changes because the
revnever moves. Howeverdvc updateoutput doesn't really signal this, in fact it says "Saving information..." as if something happened:Although this is correct update behavior (as explained in treeverse/dvc.org#735 (comment)), maybe the output could be different when it detects a fixed rev field in the DVC-file, and this rev hasn't changed. It could give an INFO message to suggest the user may have to re-import instead of updating. Something like: