파이썬 및 git 설치 필요
$ brew install dvc
# 또는
$ pip install dvc
# 특정 버전을 설치하고 싶을 경우
$ brew install dvc==2.6.4
# OR
$ pip install dvc==2.6.4
$ dvc --version
$ dvc --help
$ mkdir dvc-tutorial
$ cd dvc-tutorial
$ git init
$ dvc init
$ mkdir data
$ cd data
$ vi demo.txt
$ cat demo.txt
# Hello dude!
$ cd ..
$ dvc add data/demo.txt
$ git add data/demo.txt.dvc data/.gitignore
$ cd data
$ ls -a # demo.txt.dvc 파일이 생성된 것을 확인
$ cat demo.txt.dvc # demo.txt 파일의 메타데이터를 가진 파일
$ git commit -m "Add demo.txt.dvc"
본인의 s3 또는 구글 드라이브 등과 같은 원격 스토리지를 생성한다.
본인은 구글 드라이브를 써보겠다.
구글 드라이브를 사용할 경우, 새로운 폴더를 만든 뒤,
url로 부터 ID를 복사한다.
복사한 ID를 원격 스토리지로 세팅한다.
$ dvc remote add -d storage gdrive://<GOOGLE_DRIVE_FOLDER_ID>
# dvc의 default remote storage로 gdrive://<GOOGLE_DRIVE_FOLDER_ID>를 세팅
$ git add dvc/config
$ git commit -m "add remote storage"
$ dvc push
$ cd dvc-tutorial
$ rm -rf .dvc/cache/ # dvc 캐시 삭제
$ rm -rf data/demo.txt # dvc push 했던 데이터 삭제
# dvc pull로 구글 드라이브에 업로드했던 데이터 다운로드
$ dvc pull
# 다운받은 파일이 이전 데이터와 동일한지 확인
$ cat data/demo.txt
# 데이터 변경
$ vi data/demo.txt
# 변경됐는지 확인
$ cat data/demo.txt
# dvc add (data/demo.txt.dvc를 변경시켜주는 역할)
$ dvc add data/demo.txt
$ git add data/demo.txt.dvc
$ git commit -m "update demo.txt"
# 새로운 버전의 data 파일을 원격 스토리지에 업로드
$ dvc push
# .dvc파일을 깃 레포지토리에 업로드
$ git push
구글 드라이브로 이동해서 새로운 파일이 업로드 되었는지 확인
# git log 확인
$ git log --oneline
# demo.txt.dvc 파일을 이전 commit 버전으로 되돌린다.
$ git checkout <COMMIT_HASH> data/demo.txt.dvc
# dvc checkout
# demo.txt.dvc의 내용을 보고 demo.txt 파일을 이전 버전으로 변경
$ dvc checkout
# 데이터가 이전 버전으로 변경되었는지 확인
$ cat data/demo.txt