最初に
世はまさに大メモアプリ時代。NotionやObsidianがもてはやされる中、あえて 「Logseq」という神メモアプリを選びしこだわり派の皆様、いかがお過ごしでしょうか。
Logseq最高ですよね。でも、家ではWindowsのデスクトップ、外ではMacBook……みたいにOSをまたいで使おうとした瞬間、同期の壁にぶち当たって絶望しませんでしたか?私はしました。
本マニュアルは、GitHubのプライベートリポジトリを利用して、複数端末(MacOSおよびWindows) の間でLogseqのデータを安全かつ自動で同期するための手順書です。
前半では「MacOS間(Mac mini ⇆ MacBookなど)」の基本設定を解説し、後半の【追加編】では「Windows PC」を連携させるための設定方法(フックスクリプト方式とプラグイン方式)を解説します。
1. 事前準備(共通)
- Logseq: インストール済みであること
-
GitHubアカウント: 作成済みであること(アカウント名例:
logseqman) -
プライベートリポジトリ: GitHub上でリポジトリ(リポジトリ名:
logseq)を新規作成。
2. 1台目(MacOS)のセットアップ手順
STEP 2-1: SSHキーの作成とGitHubへの登録
GitHubとの通信をパスワードなしで安全に行うための設定です。
-
ターミナルを開き、以下のコマンドを実行してSSHキーを生成します。GitHubに登録したメールアドレスを使うこと。
ssh-keygen -t ed25519 -C "your_email@example.com"※途中、保存先やパスフレーズを聞かれますが、何も入力せずにすべて Enterキー を押して進めて構いません。
-
生成したキーをMacのssh-agent(バックグラウンドプロセス)に登録します。
eval "$(ssh-agent -s)" ssh-add --apple-use-keychain ~/.ssh/id_ed25519
-
公開鍵の内容をクリップボードにコピーします。
pbcopy < ~/.ssh/id_ed25519.pub
-
ブラウザでGitHubの SSH keys設定ページ を開きます。
-
右上の「New SSH key」をクリックし、以下のように入力して登録します。
-
Title:
Mac(Mac miniやMacbook等) -
Key: コピーした内容をそのまま貼り付け(
Command + V)
-
Title:
-
ターミナルに戻り、接続テストを実行します。
ssh -T git@github.com※初回接続時のみ
Are you sure you want to continue connecting...と聞かれるので、yesと入力してEnter。Hi {ユーザー名}! You've successfully authenticated...と表示されれば接続成功です。
STEP 2-2: 空のリポジトリをローカルにクローン
-
同期フォルダを配置したいディレクトリ(例: デスクトップ)に移動します。
cd ~/Desktop
-
GitHubからリポジトリをクローンします。
git clone git@github.com:あなたのアカウント名/logseq.git
STEP 2-3: 自動同期スクリプト(Gitフック)の設定
自動でGitHubへ同期(コミット&プッシュ)させるためのスクリプトファイルを配置します。
-
配布元のGitHubリポジトリ Logseq-Git-Sync-101 にアクセスします。
-
画面右上の緑色の「<> Code」ボタンをクリックし、「Download ZIP」を選択してパソコンにダウンロード・解凍します。

-
解凍したフォルダ内にある
git-hooksというフォルダを開き、中に入っているpre-commitとpost-commitの2つのファイルをコピーします。

-
クローンした手元の
logseqフォルダ内にある.git/hooks/フォルダへ、コピーした2つのファイルを貼り付け(配置)します。
-
ターミナルで該当ディレクトリに移動し、スクリプトに実行権限(Executable)を付与します。
cd ~/Desktop/logseq/.git/hooks chmod +x ./pre-commit && chmod +x ./post-commit
STEP 2-4: 初回データの手動コミット&強制プッシュ
空のリポジトリに対して、ローカルの初期データを一度だけ手動で認識させます。
-
Logseqアプリを起動し、「Add new graph(新しいグラフを追加)」から、デスクトップの
logseqフォルダを選択して開きます。
-
任意のページ(Journalなど)にテスト用の文字を何か入力し、ローカルにファイルが生成された状態にします。
-
ターミナルで以下のコマンドを上から順に1行ずつ実行します。
cd ~/Desktop/logseq git add . git commit -m "Initial commit" git branch -M main git remote add origin git@github.com:あなたのアカウント名/logseq.git git push origin mainブラウザでGitHubのリポジトリ画面を更新し、フォルダが表示されれば成功です。
STEP 2-5: Logseqのアプリ内自動設定
Logseq右上の「...(設定)」>「Settings」>「Version control」を開き、以下の2つのトグルを オン にします。
- Enable Git auto commit(Gitの自動コミットを有効化)
- Auto commit when window is closed(ウィンドウを閉じたときにGitにコミットする)
3. 2台目(MacOS)のセットアップ手順
-
SSHキーの設定: もう1台のMacOSでも「STEP 2-1」と全く同じ手順を行い、GitHubのSSH設定ページに1台目のMacOSと別の名前で新しい公開鍵を登録します。
-
リポジトリのクローン: MacOSのターミナルを開き、データをダウンロードします。
cd ~/Desktop git clone git@github.com:あなたのアカウント名/logseq.git
-
Gitフックの設定: 「STEP 2-3」と同様に、MacOS側の
logseq/.git/hooks/ディレクトリ内にpre-commitとpost-commitを配置し、実行権限を与えます。cd ~/Desktop/logseq/.git/hooks chmod +x ./pre-commit && chmod +x ./post-commit
-
Logseqでの読み込み: MacBook側でLogseqアプリを開き、「Add new graph」からクローンした
logseqフォルダを指定して読み込みます(すでにMac miniで書いたデータが自動で反映されます)。
-
アプリ内設定: 「STEP 2-5」と同じく、Version control内の自動コミット設定を2つとも オン にします。
※ 2台目以降はすでにGitHubに「正解データ」が存在するため、STEP 2-4 のような手動プッシュ(git push -f)作業は一切不要です。
4. 【追加編】Windows PCと連携する場合の設定手順
「Windows環境でも同期機能を使いたい」という方も多いはず。
まずはMacOSと同様に公式の「フックスクリプト(.git/hooks)」を使った設定を行います。
※ただし、Windows環境ではOSの仕様(改行コードやシェルの実行環境など)によりフックが正常に動作しないケースが多々あります。
もしうまくいかない場合は、後述する 「プラグイン方式」 へ移行してください。
STEP 4-1: Git BashでSSHキーを作成・登録する
-
Git for Windows をインストールしておきます。
- スタートメニュー > 「Git Bash」 を開き、SSHキーを生成します。
(※すべてEnterキーで進めます。上書き確認が出た場合は
ssh-keygen -t ed25519 -C "your_email@example.com"yで進めてください)
- 公開鍵をコピーします。
clip < ~/.ssh/id_ed25519.pub
- Macの時と同様に、GitHubの SSH keys設定ページ へ行き、Titleを
Windows PCなどにして貼り付けます。
- 接続テストを行います。
ssh -T git@github.com
STEP 4-2: リポジトリのクローン
同期フォルダを配置したいディレクトリ(例: デスクトップ)に移動します。
cd ~/Desktop/
または
cd ~/デスクトップ/
OneDrive内にある場合
cd ~/OneDrive/Desktop/
または
cd ~/OneDrive/デスクトップ/
移動できたら、クローンを実行します。
git clone git@github.com:あなたのアカウント名/logseq.git
STEP 4-3: 自動同期スクリプト(Gitフック)の設定
基本はMacと同じ手順ですが、Windows特有の注意点があります。
- Macの時と同じように Logseq-Git-Sync-101 からZIPをダウンロードして解凍し、
git-hooksフォルダ内にあるpre-commitとpost-commitをコピーします。
- Windowsの
logseq/.git/hooks/フォルダへ貼り付けます。(※.gitは隠しフォルダなので、エクスプローラーの「表示」メニューから「隠しファイル」にチェックを入れてください)
- ⚠️ 【重要】改行コードの修正
Windowsではファイルの改行コードがデフォルトでCRLFになるため、そのままではスクリプトが動きません。VS Codeなどのエディタでpre-commitとpost-commitを開き、右下の改行コードをLFに変更して上書き保存してください。
- Git Bashで実行権限を付与します。
cd logseq/.git/hooks chmod +x ./pre-commit && chmod +x ./post-commit
STEP 4-4: Logseqでの読み込みと動作確認
- WindowsのLogseqアプリを起動し、「Add new graph」からデスクトップの
logseqフォルダを選択します。
- Logseqの「設定」>「バージョンコントロール」を開き、「Git自動コミットを有効にする」と「ウィンドウを閉じたときにGitにコミットする」をオンにします。
- 適当なページを編集し、Logseqのウィンドウを閉じるか数分待ってから、GitHub上に変更が反映されているか確認してください。無事に同期されていれば、Windows側の設定も完了です!
🚨 STEP 4-5: 【うまく同期されない場合】確実なプラグイン方式へ移行する
Windows環境の場合、「設定は合っているのに裏側でエラーが起きていて同期されない(しかも画面にエラーが出ない)」というサイレントエラーの罠に陥ることが非常に多いです。
もしSTEP 4-4でGitHubに同期されなかった場合は、無理にフックを使わず、以下の手順で優秀なプラグインに自動同期を任せる方式に切り替えることを強くおすすめします。
① フックの無効化(下準備)
-
logseq/.git/hooks/に配置したpre-commitとpost-commitを削除します。 - Logseqの「設定」>「バージョン管理」の「Git自動コミットを有効にする」をオフに戻します(プラグインと機能が競合するのを防ぐため)。
② プラグインの導入
- 画面右上の「...」 > 「Plugins」 > 「Marketplace」を開きます。
- 検索窓に
gitと入力し、Authorがhaydenull氏の 「Git」 プラグインをインストールします。

⚠️ 【よくあるエラー】プラグインがインストールできない場合
まれに、インストールボタンを押した際やMarketplaceを開いた際にGithub API Failed(403) API rate limit exceeded...という赤いエラーが出て、インストールができないことがあります。
これは「世界中からのアクセス集中による、GitHub側のAPI一時制限」が原因です。解決策:待つ
少し放置すると制限がリセットされ、普通にインストールできるようになります。
- インストール後、プラグインの歯車マーク(設定)を開き、
Auto Push(自動プッシュ) のトグルをオン(または同期タイミングを設定)にします。

これで、Windows側でもプラグイン経由で自動的にコミット&プッシュが行われるようになります!
STEP 4-6: プラグインを使った手動同期(Pull / Push)
基本的にはバックグラウンドで自動同期されますが、別のPC(Macなど)で書いた最新データをWindowsに持ってくる場合や、今すぐ確実に同期させたい場合は、画面右上に追加されたプラグインのボタンから簡単に手動操作が可能です。

(画面右上のメニューバーに追加された、ひし形のGitアイコンをクリック)
① 別のPCで書いた最新データを取得する(Pull)
作業を始める前に、メニューから Pull Rebase をクリックします。これでGitHub上にある最新のメモデータがWindows側にダウンロード・反映され、競合(コンフリクト)を防ぐことができます。
② 今すぐGitHubへデータを送信する(Push)
自動同期のタイミングを待たずに「キリが良いから今すぐアップロードしたい!」という時は、メニューから Commit & Push をクリックします。右上に緑色の完了通知が出れば同期成功です!
5. 日常の運用ルールと注意点
複数端末でのGit同期において、データの不整合や競合(コンフリクト)を起こさないための「鉄則」です。
💡 コンフリクトを防ぐための『絶対ルール』
-
作業を終える時は、必ずLogseqのウィンドウ(アプリ)を閉じる
- Macはウィンドウを閉じた瞬間にフックが、Windowsはプラグインが裏でGitHubへ最新状態を自動プッシュします。
-
別の端末で作業を始める時は、念のため最新の状態に更新(Pull)する
- 同期漏れを防ぐため、他方のPCでLogseqを開く前にターミナル(またはGit Bash)で以下を実行するとより安全です。
cd ~/Desktop/logseq
git pull
最後に
ここまでお読みいただきありがとうございます!
初学者ながら、Logseqの複数端末同期についてまとめさせていただきました。
記事を書きながらふと思ったのですが……「そもそもLogseqユーザーがニッチなのに、わざわざMacとWindowsでGit同期させようとする変態(誉め言葉)、日本に私以外いるんでしょうか?」
日本語のガイドも少なく、英語のドキュメントと睨めっこしながらの構築はなかなかにハードでした。(特にWindowsのプラグイン方式に逃げ込むまでの道のり…)
需要は「私」ただ1人かもしれませんが、いつか同じように「どうしても複数端末でLogseqを使いたい!」という奇特な同志が現れた時のため、そして何より設定方法を秒で忘れる未来の自分のためのメモとして置いておきます。


