🔍 この記事でできること
この記事では、
パソコン起動時に自動で git pull
→ 10分ごとに自動で git push
してくれる仕組みを作ります。
つまり、Obsidianやテキストファイルを編集して保存するだけで、GitHubに自動でバックアップされるようになります!
*実際の作業は自己責任の元、実施して下さい。
✅ どうして「起動時に pull」するの?
GitHubを複数のPCで使っている場合、他のPCで編集した内容がGitHub上にあることがあります。
このとき、いきなりObsidianのアプリを起動したり、 push(アップロード)してしまうと、競合(conflict) が起こってしまうことがあります。
なので、安全のために
1️⃣ まず git pull
で最新状態を取得して、
2️⃣ そのあと自動で push する
という流れにします。
⚙️ スクリプトの内容
以下の内容をコピーして、C:\Users\ユーザー名\Documents\ObsidianVault\auto_sync.ps1
という名前で保存します。ファイルの保存場所はどこでも構いません。
# === 自動Git同期スクリプト ===
# 起動時に git pull → 10分ごとに自動commit & push
$repoPath = "C:\Users\ユーザー名\Documents\ObsidianVault"
$intervalMinutes = 10
# --- 起動時に最新データを取得 ---
Write-Host "起動時に git pull を実行中..."
Set-Location $repoPath
git pull
# --- 自動ループ開始 ---
while ($true) {
Write-Host "変更をチェック中..."
Set-Location $repoPath
$status = git status --porcelain
if ($status) {
Write-Host "変更を検知しました。自動commit & pushします。"
git add -A
$timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
git commit -m "Auto commit at $timestamp"
git push
} else {
Write-Host "変更はありません。"
}
Write-Host "次のチェックまで $intervalMinutes 分待機します。`n"
Start-Sleep -Seconds ($intervalMinutes * 60)
}
🚀 起動時に自動で動かす設定
- Windowsキー + R を押して
shell:startup
と入力 → Enter - スタートアップフォルダが開くので、右クリック →
「新規」→「ショートカット」 - 以下の内容を入力:
powershell.exe -ExecutionPolicy Bypass -File "C:\Users\ユーザー名\Documents\ObsidianVault\auto_sync.ps1"
(上記で保存場所を変更した場合は、その保存場所を指定して下さい) - 名前を「Obsidian自動同期」などにして保存!
これで、パソコンを起動すると自動でスクリプトが動き始めます。
🧠 負荷はほとんどなし!
このスクリプトは 10分に1回だけ 軽い処理をするだけなので、
CPU使用率は ほぼゼロに近い です。
常駐していても、パソコンが重くなることはありません。
もし心配な場合は、間隔を30分などに変更してもOKです。
💡 ここがポイント!
- 起動時に pull → 安全に最新状態を取得
- 自動 push → 書き忘れの心配なし!
- 低負荷設計 → 常時起動でも快適
これを使えば、Obsidianノートが自動でクラウドバックアップされ、
どのPCでも安心して編集できます。
✨ おまけ:もっと便利にするなら…
- タスクスケジューラで「ログイン後に実行」にしておくと、
ウィンドウを開かずにバックグラウンドで動かせます。 - 通知音やログ出力をつけると、「ちゃんと動いてる」が確認できます。
🪄 まとめ
目的 | 方法 |
---|---|
起動時に最新を取得 | git pull |
定期的にアップロード | 10分ごとに git push |
安全な同期順序 | pull → push |
CPU負荷 | ほぼゼロ |
✍️ 感想
初心者でも簡単に自動バックアップできる方法です。
Gitを使う習慣がつくと、ノートや資料の管理が一気に快適になります!
コメント