# Как работать с dvc в этом проекте? ```shell # Выбираем ветку git branch -a # выдаст все ветки # если нужная ветка только в remote git branch --track branch-name origin/branch-name # скачали ветку git checkout branch-name # Загружаем данные. Ключи не нужны, хранилище открытое. dvc pull ``` ## Выбираем только нужные презентации из датасета Допустим я собираю датасет для POC. Он должен состоять примерно из 20ти отобранных презентаций. Но сейчас у меня уже ~80. С помощью dvc можно создать версию датасета, в которой будут только нужные презентации. При этом на диске не будет дубликатов. Вот структура директории. `./data/raw` уже отслеживается dvc: ``` ./data ├── raw │   ├── business # 7 items │   │   ├── business_incognita │   │   └── insider_infor │   ├── data-science # 73 items │   │   ├── aiconf │   │   └── yappi-days │   └── weird-slides └── raw.dvc ``` Презентации по бизнесу я собираю сейчас - все они подходят для POC. А по data-science надо выбрать подходящие. Используем для этого `.dvcignore` - как `.gitignore`, только для dvc. Вот полезные паттерны для `.ignore` файлов: [Паттерны .gitignore:](https://git-scm.com/docs/gitignore) - `*` - мэтчит любую последовательность символов - `/**/` - мэтчит любую последовательность вложенных папок - `!` - отрицание на паттерн - игнорируй все, что не `` - `!**` игнорируй все, что не содержит `` Теперь к задаче: - Выберем нужные презентации из `data-science`. Хватит названия файла, можно не записывать полный путь. - Попросим dvc игнорировать все файлы из `data-science`, кроме избранных. Воспользуемся отрицательными паттернами. В итоге получим вот такой `.dvcignore` ```shell # ignore папку с data-science презентациями raw/data-science/**/*.pdf # выбираю нужные презентации. !*1.За рамками сценария_Эмели Драль_вер.3* !*2.Kolmogorov Arnold Networks_Павел Плюснин_вер.2* !*4.Обзор уязвимостей и техник защиты для LLM_Евгений Кокуйкин_вер.3* !*6.Увеличиваем число обнаружений в задачах_Дмитрий Колесников_вер.4* ``` Проверим, что все прошло по плану: ```shell dvc diff # Выдаст список Deleted: dvc list -R data --dvc-only # список файлов, отслеживаемых dvc ``` Убедились, что мы удалили все файлы, кроме выбранных. Коммитим. ```shell dvc commit # сохраним в гит git add .dvcignore data/raw.dvc git commit -m "Select presentations for POC ``` Чтобы скачать презентации только для POC: ```shell git checkout POC dvc pull ```