Опишу тут, как организовал контроль версий через гит у себя на ПК под windows. До этого я никогда не пользовался гитом, потому инструкция во многом рассказывает базовые вещи, но тем и полезнее она будет для таких же как я, кто понятия не имеет, что это за git такой.
Т.к. пк у меня запущен почти всегда, а обсидиан нет, мне кажется более удобным не использовать плагин для обсидиана, а делать синхронизацию при помощи скриптов. Тогда к примеру, изменения, вносимые на телефоне, по syncthing попадают на пк, а оттуда уходят в git, даже если обсидиан не открыт / открыто не основное хранилище.
Я использую git не для полноценного бэкапа, для этого у меня Duplicati, а именно для удобного просмотра изменений в файлах, т.к. мне понравилось представление этой инфы в git, с первого дня нашел полезным, восстанавливая конкретные кусочки текста. Потому репо не опубликовано, хранится лишь локально.
Инструкция:
1. Устанавливаем:
- Сам гит https://git-scm.com/ (все настройки оставил по умолчанию)
- И интерфейс для него, мне хватает базового для такого простого дела https://desktop.github.com/
2. Перед запуском в корне хранилища создаем файл .gitignore с прописанными внутри исключениями, к примеру:
.obsidian/
.obsidian_mobile/
.obsidian_mobile_lite/
.obsidian_pc/
.stfolder/
.stversions/
3. Создаем репозиторий в той же папке, в которой расположено хранилище. Если нужна синхронизация с Github, публикуем его.
В пути к репозиторию не должно быть кириллицы, иначе скрипты будут отрабатывать некорректно
4. Создаем скрипты для автоматических коммитов
Создаем 2 файла, кидаем их в папку .git, чтобы не мешались в воулте.
Файл Obsidian_git_sync.bat с содержимым:
@echo off
@SETLOCAL ENABLEDELAYEDEXPANSION
cd C:\Mega\Obsidian
git init
for /L %%n in (1,0,10) do (
git add .
git commit -m "!date! !time!"
timeout /T 300
)
Если нужен и пуш, добавить после git commit строчку git push origin master
Тут указываем путь к хранилищу cd C:\Mega\Obsidian
Тут указываем периодичность запуска в секундах timeout /T 300
Файл Obsidian_git_sync.vbs с содержимым:
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run("C:/Mega/Obsidian/.git/Obsidian_git_sync.bat"), 0, True
Тут прописываем путь до первого файла, этот скрипт запускает первый скрипт в фоне.
5. Добавляем файл Obsidian_git_sync.vbs в автозапуск
Попадаем в папку автозапуска при помощи Win+R, shell:startup
Кидаем туда ссылку на скрипт
Спасибо чату за подсказки, как все это можно сделать