Gitを用いたグラフの管理
Logseqはアプリのインストール先の奥深くにGitの実行ファイルもインストールしており(注4)、アプリからはそちらが利用されます。 このため、以下の設定をするにあたって別途Gitをインストールする必要はありません。
手動でgitコマンドを使う場合には、Gitのインストールをおすすめします。
「設定(Settings)」>「バージョンコントロール」>「Gitの自動コミットを有効化」をオンにしてアプリを再起動すると、グラフの保存先フォルダにGitリポジトリが作成されます。 https://scrapbox.io/files/654a667e61e557001b433b6f.png
実行後のグラフの保存先フォルダ内は次のようになります。
.git/
journals/ (日誌の保存先)
logseq/ (設定ファイル、バックアップファイル、ゴミ箱ファイル)
pages/ (ページの保存先)
そのほか、利用状況により assets/ draws/ whiteboards/ などのフォルダがあるかもしれません。
「Gitの自動コミットを有効化」をオンにすると、「Gitの自動コミット間隔」(デフォルトは60秒。上の写真では15秒)に指定された時間間隔で、Logseqがグラフの保存先フォルダ内のファイル更新の有無を監視します。
監視開始後に新たにフォルダに追加されたファイルや更新されたファイルは、指定の時間間隔のタイミングで自動的に git add コマンドでローカルリポジトリへ追加された後、コミットされます。
上の設定なら、ファイルを追加・更新してから遅くとも15秒以内には追加、コミットされることになります。
コミットログは「Auto saved by Logseq」となります。
なお、pull や push は自動実行されません。自動実行されるのは add と commit のみです。
gitコマンドを自動でなく手動で実行したい場合には、Logseqのlogseq-plugin-gitプラグインを使うとよいかもしれません。
上記のようにGitでグラフを管理する場合、 ページ右上の「・・・」メニューから、「ページ履歴の確認」ができるようになります。この機能は、対象ページのコミット履歴に基づいて過去のページ内容を表示できます。
注1)手動で git init した場合、既に存在している assets/ journals/ logseq/ pages/ などのフォルダは自動的に add されません。必要に応じて手動で add してください。
注2).gitignore ファイルも適宜設定してください。例えば、次のファイルは.gitignoreに含めてよいかもしれません。(バックアップファイルとゴミ箱内のファイル)
logseq/bak/
logseq/.recycle
注3)Dropboxのようなクラウドストレージでグラフの保存先フォルダを同期している場合、.git フォルダの管理に注意が必要です。例えば、クラウドストレージ側が同期処理のため.gitフォルダ内のファイルをロックしている場合があり、Logseq側の自動コミットの妨げとなります。よって、.gitフォルダはクラウドストレージの同期対象から外してください。
たとえば、Windows版のDropboxの場合、.gitフォルダを同期対象から外すには、次のコマンドをPowerShellで実行します。
Set-Content -Path 'あなたのグラフの保存先フォルダ\.git' -Stream com.dropbox.ignored -Value 1
注4)具体的には、Logseqのインストール先を掘った先の node_modules の dugit の下をさらに掘ってゆけばGitの実行ファイルがあると思います。
Logseqに内蔵されているGit連携機能は以上です。GitHubと同期したい場合は、さらに追加の手順が必要です。
GitHubとの同期の手順は下記が参考になると思います(英語ページ)