← ブログ一覧

ローカルのノートアプリを、チームで共有する──Obsidianの共同編集をGitで実現した話

ObsidianGit社内ナレッジチーム共有情報管理ローカルツール業務効率化中小企業

Git の記事で、実例として少しだけ触れた話があります。

Obsidian というノートアプリを使っています。ローカルのフォルダに md ファイルが大量に並ぶ形式で、手元で動くからこそ速くて快適な反面、そのままでは自分ひとりのものです。

この「ローカルで動くから快適だが、一人のものになる」という問題は、Obsidian に限りません。手元のフォルダでファイルを扱うツールは、たいてい同じ壁にぶつかります。

今回は、その解き方を書きます。私たちは Git で管理することにしました。

なお先に断っておくと、まだ解けていない部分もあります。そこも正直に書きます。


そもそも、何が問題なのか

Obsidian は、手元のフォルダに md ファイルを並べるだけのツールです。特殊なデータベースを持たず、テキストファイルがそのまま置いてある。

だから速い。何万件あっても検索は一瞬ですし、アプリを閉じてもファイルは残ります。サービスが終了しても、手元にファイルが残る——これは地味ですが、長く使うツールとして重要な性質です。

問題は、その手元が一人分しかないことです。

チームで使いたい。誰かが書いた議事録を、別の人が翌日に読みたい。会議で決まったことを、全員が同じ場所で確認したい。でも、ファイルは自分の PC の中にある。


クラウドドライブでは、なぜ苦しいのか

いちばん先に思いつくのが、Google ドライブや OneDrive のフォルダに vault(Obsidian の保管庫)を置く方法です。実際、これで動く場合もあります。

ただ、私たちはこの方法では続きませんでした。理由は 4 つです。

問題何が起きるか
ファイル数が多すぎるノートが増えると同期が追いつかず、遅れる
競合コピーが量産される2 人が同時に触ると「〜のコピー」が増殖する
アップロードの手間作業のたびにブラウザを開く。数十秒でも続かない
容量を圧迫する版履歴を持つぶん、思ったより食う

2 つ目が特にきついところです。せっかくファイル名でのバージョン管理をやめたのに、別の形で「どれが本物か分からない」状態が戻ってくるGit の記事で書いた地獄が、名前を変えて現れます。

3 つ目も、地味に効きます。備品管理の記事で「入力が面倒なら現場は続けられない」と書きましたが、自分たちにも同じことが起きました。数十秒の手間でも、忙しい日から順に飛ばすようになる。


Obsidian Sync という選択肢

公式には Obsidian Sync という同期サービスがあります。月額 4〜8 ドル程度で、設定はほぼ不要。楽さでは、これがいちばんです。

正直に書くと、多くの場合これで十分だと思います。特に「複数の端末で自分のノートを同期したい」だけなら、迷わずこちらを勧めます。

私たちが Git を選んだのは、別の理由があったからです。

  • すでに Git を使っていた——コードで日常的に使っているので、新しく覚えるものがない
  • 変更の理由を残したかった——誰が何を、なぜ書き換えたのかを追いたかった
  • 他の仕組みと繋げたかった——蓄積したノートを、別の用途に使う余地を残したかった

つまり「Sync より Git が優れている」ではなく、すでに Git がある環境だったからです。ここは正直に書いておきます。


セットアップ:実際の手順

やっていることは、驚くほど単純です。

vault を、そのまま Git リポジトリにしている。 それだけです。

Obsidian の vault は md ファイルが並んだただのフォルダなので、そのまま Git で管理できます。特別な変換も、書き出しも要りません。

1. リポジトリを作る

必ずプライベートリポジトリにしてください。業務のノートには、顧客名も社内の判断も入ります。

cd /path/to/your-vault
git init
git remote add origin git@github.com:your-org/your-vault.git

2.「.gitignore」を置く ← ここが最大の勘所

この記事でいちばん伝えたいのがここです。 飛ばすと、毎回コンフリクトが起きます。

理由は、Obsidian が .obsidian/ フォルダの中に端末ごとの状態を書き続けているからです。どのペインを開いているか、直前に見たファイルは何か——画面をいじるたびに書き換わるファイルがあります。

これを共有すると、何が起きるか。A さんがノートを開いただけで変更が発生し、B さんの状態とぶつかる。 ノートの中身は何も変えていないのに、です。

だから vault のルートに .gitignore を作って、こう書きます。

# 端末ごとの画面レイアウト。共有すると必ず衝突する
.obsidian/workspace.json
.obsidian/workspace-mobile.json

# キャッシュ・ゴミ箱
.obsidian/cache/
.trash/

# 頻繁に書き換わるプラグインの状態
.obsidian/plugins/obsidian-git/data.json
.obsidian/plugins/recent-files-obsidian/data.json

# OS が勝手に作るもの
.DS_Store

ポイントは「.obsidian/ を丸ごと除外しない」ことです。

丸ごと外せば衝突はゼロになりますが、プラグインやテンプレートの設定も共有されなくなります。新しいメンバーが入るたびに、全部を手で設定してもらうことになる。

だから衝突するものだけを外して、共有したい設定は残す。これが実用的な線です。

すでにコミットしてしまっていたら

.gitignore は「これから追跡しないもの」を指定するだけなので、すでに追跡されているファイルには効きません。その場合はこう外します。

git rm --cached .obsidian/workspace.json .obsidian/workspace-mobile.json

--cached を絶対に付けてください。 付け忘れると、Git の管理から外れるだけでなく手元のファイルまで削除されます

3. Obsidian Git プラグインを入れる

これがないと毎回コマンドを打つことになり、確実に続きません。設定 → コミュニティプラグイン → 「Obsidian Git」を検索して有効化します。


プラグインの設定:3 つだけ間違えなければいい

設定項目は多いですが、最初に押さえるべきは 3 つです。

設定なぜ
Sync methodmerge★ 最重要。後述
Pull before pushON送る前に取り込む。衝突を早く見つけられる
Pull on startupON開いた瞬間に最新になる。取り込み忘れが物理的に起きなくなる

Sync method を「reset」にしてはいけない

これがいちばん怖い設定です。

reset を選ぶと、衝突したときに手元の変更を問答無用で捨てます。一人で使っていて「常にリモートが正しい」なら成立しますが、複数人で編集する環境では、書いたものが消えます。

複数人なら、必ず merge ここだけは間違えないでください。

rebase という選択肢もありますが、Git に慣れた一人運用向けです。チームでは避けるのが無難です。)

Pull on startup が効く理由

「書く前に最新を取り込む」を人の記憶に頼らない設定です。

備品管理の記事で「人の意志に頼る記録は必ず途切れる」と書きました。同期も同じです。「開いたら自動で取り込む」にしておけば、忘れようがありません。


デイリーノートの罠

意外と知られていない落とし穴があります。

いちばん衝突しやすいのは、その日のデイリーノートです。

理由は単純で、全員が同じ日に、同じファイルを開くからです。しかも「起動時にデイリーノートを開く」がオンになっていると、開いただけで変更が発生する場合があります。

対処は 2 つ。

  1. 「起動時にデイリーノートを開く」をオフにする(設定 → コアプラグイン → デイリーノート)
  2. デイリーノートを個人ごとに分ける——daily/tanaka/2026-08-19.md のように、フォルダを分けてしまう

2 番目のほうが根本的です。そもそも同じファイルを触らない設計にする。


運用の約束は、2 つだけ

Git の細かい操作を全員に覚えてもらう必要はありません。約束は 2 つで足ります。

1. 書き始める前に、取り込む(Pull on startup をオンにしておけば自動) 2. 書き終わったら、必ず反映する(開きっぱなしで放置しない)

そしてもう一つ、設計側の工夫があります。

ファイルを細かく分ける

1 つの巨大なノートに全員で書き込まない。トピックごと、日付ごと、担当ごとに分ける

議事録なら「会議 1 件= 1 ファイル」。プロジェクトなら「案件 1 件= 1 ファイル」。Obsidian はリンクでファイル同士を繋げられるので、分けても情報は繋がります

これだけで、衝突する確率が激減します。運用ルールで我慢するより、ぶつかりようのない構造にするほうが確実です。


衝突したら、どうするか

それでも衝突することはあります。慌てなくて大丈夫です。

衝突したファイルを開くと、こうなっています。

<<<<<<< HEAD
(自分が書いた内容)
=======
(相手が書いた内容)
>>>>>>> origin/main

やることは 3 つです。

  1. どちらを残すか、あるいは両方を残すかを決める
  2. <<<<<<< ======= >>>>>>> の 3 行を消す
  3. 反映する(プラグインの Commit and sync、またはコマンド)

テキストなので、目で見て判断できます。 これが Git の強いところです。

そして重要なのは——衝突したことに気づけるという点。クラウドドライブの競合コピーは、気づかないまま片方が消えていることがあります。ぶつかったと分かるほうが、はるかに安全です。


画像や PDF を入れるときの注意

Git はテキストに強く、大きなバイナリファイルに弱いという性質があります。

画像や PDF を大量に貼ると、リポジトリが膨らみ、特にスマートフォンで動作が重くなります

対処の選択肢は 3 つ。

方法どういうとき
添付ファイルを .gitignore で除外する画像は別の場所に置き、リンクだけノートに書く
Git LFS を使うどうしても vault 内に置きたい場合
そもそも入れない画像中心の資料は、別のツールに置く

私たちはテキスト中心で運用しているので、ここは大きな問題になっていません。ただ、「なんでも vault に放り込む」運用を始めると、いずれ効いてきます


スマートフォン:ここはまだ解けていない

正直に書きます。スマホからの利用は、まだ完全には解けていません。

パソコンでは快適に回っています。ただ、モバイルは事情が違います。

端末現状
AndroidObsidian Git プラグインがそのまま動く
iPhone / iPadプラグインは動くが、Working Copy という Git アプリを併用する構成が確実とされる

そして共通の課題として、リポジトリが大きくなるとモバイルで動作が重くなる、あるいは固まるという問題が知られています。プラグインの開発リポジトリでも継続的に議論されている論点で、根本解決はまだありません

実用的な回避策としては、こういったものが挙げられています。

  • 自動保存の間隔を長めにする(30 分以上)
  • コミットと反映の間隔を分ける設定にする
  • 大きなバイナリファイルを .gitignore で除外する

私たちも、iPhone で vault をローカルに置いて開く構成を詰めている最中です。外出先で議事録を確認する、移動中にメモを取る——という用途を完全に満たすには、まだ手を入れる余地があります。

「全部解決しました」と書けないのは残念ですが、前の記事で書いた通り、書けないことは書かない方針でやっています。


向いていない場合

例によって、万能ではありません。

向いている向いていない
テキスト中心のノート画像や動画が大量にある
少人数(数人〜十数人)のチーム全社数十人が同時に書く
Git を触れる人が 1 人はいる誰も触れない
ローカルの速さを捨てたくないブラウザで完結したい

3 番目が実質的な条件です。最初の設定でつまずくと定着しません。誰か 1 人が構築して、他のメンバーは「ワンタッチ 2 つ」だけ覚える——という形にできるかが分かれ目です。

そして、全社的なナレッジ基盤にするなら、Notion のようなツールのほうが素直です。会議ナレッジの記事で Notion を勧めているのは、そういう理由です。

Obsidian × Git は、「ローカルの速さを捨てたくない少人数チーム」のための構成です。


一般化すると

この記事は Obsidian の話ですが、構造としてはもっと広い問題を扱っています。

手元で動くから快適なツールを、どうやってチームで共有するか。

同じ問題は、いろいろな場所で起きます。設定ファイル、原稿、台帳、スクリプト。「クラウドに上げれば共有できる」で済まない場面は、意外と多い。

そのとき、ファイルがテキストで、フォルダに並んでいるなら、Git という選択肢がある。これが持ち帰れる一般解だと思います。

Git の記事で「クラウドドライブの版履歴で足りるなら、Git を覚える必要はない」と書きました。今回の話は、その「足りなくなる場面」の具体例です。


まとめ

  • Obsidian のようなローカルで動くツールは、手元にあるから速い。でもそのままでは一人のもの
  • クラウドドライブでの共有は、ファイル数・競合コピー・アップロードの手間・容量で苦しくなる
  • 公式の Obsidian Sync(月 4〜8 ドル)は楽。自分ひとりの端末間同期なら、まずこちらでいい
  • 私たちが Git を選んだのは、すでに Git を使っていたから。優劣ではなく環境の話
  • 構成は単純。vault をそのまま Git リポジトリにして、プラグインで pull と push を自動化する
  • 最大の勘所は .gitignore.obsidian/workspace.jsonworkspace-mobile.json を外さないと、ノートを開いただけで衝突する。ただし .obsidian/ を丸ごと外すと設定が共有されなくなるので、衝突するものだけ外す
  • すでにコミット済みなら git rm --cached--cached を忘れると手元のファイルまで消える
  • プラグイン設定は 3 つ。Sync method は必ず mergereset は手元の変更を捨てる)/Pull before push は ON /Pull on startup は ON
  • いちばん衝突するのはデイリーノート。起動時に開く設定を切るか、個人ごとにフォルダを分ける
  • クラウドドライブはファイル単位、Git は行単位。だから同じファイルでも違う場所なら自動でまとまる。そして衝突したことに気づける
  • 画像や PDF を大量に入れると重くなる。テキスト中心で使うのが前提
  • スマホからの利用は、まだ完全には解けていない。Android はプラグイン単体、iPhone は Working Copy 併用。現在進行形の課題
  • 向いているのは「ローカルの速さを捨てたくない少人数チーム」。全社基盤なら別のツールのほうが素直

「手元で動くから速いが、共有できない」——このジレンマは、片方を諦める必要はありません。テキストでフォルダに並んでいるなら、道はあります。

Acetyl:Tech は、社内のナレッジをどう置き、どう共有するかの設計から支援しています。 「情報がバラバラで、どこに何があるか分からない」という段階のご相談も承ります。詳しくは「AI 議事録・社内ナレッジ活用支援」のページをご覧ください。


出典・参考

※ Obsidian Sync の料金やプラグインの仕様は変わります。導入前に公式サイトでご確認ください。

Read next

他の記事

AI・DXの導入、どこから手をつけるか迷ったら

Acetyl:Techが、あなたの会社で「本当に使われる形」まで設計します。まずはお気軽にご相談ください。

無料で相談する