メインコンテンツへスキップ
見出し画像

[Obsidian] 結局行き着いた .gitignore

    '.obsidian' 配下の様々なファイルの更新状況を、Mac および iPhone で git と Working Copy を巧みに使いながら散々チェックしました。

    結果、次のような '.gitignore' ファイルができあがりました。

    # to exclude Obsidian's settings (including plugin and hotkey configurations)
    # .obsidian/
    
    # OR only to exclude workspace cache
    .obsidian/workspace.json
    .obsidian/workspace-mobile.json
    .obsidian/*-plugins.json
    .obsidian/plugins/recent-files-obsidian/data.json
    .obsidian/plugins/obsidian-git/data.json
    .obsidian/appearance.json
    
    # exclude business notes
    4[0-9]_*/
    
    # Add below lines to exclude OS settings and caches
    .trash/
    .DS_Store

    素直に '.obsidian' 以下を commit の対象としなければ、merge が頻繁に訪れたり、ファイルが行方不明になることはありませんでした。それでも、わたしは自動的にプラグインは同期してほしかった。と言うことで、ここへ行き着きました。

    詳解しましょう。言わずもがな、のところは放置します。

    Obsidian 固有のファイル

    デバイス毎のワークスペース情報は同期させない

    .obsidian/workspace.json
    
    .obsidian/workspace-mobile.json

    'workspace.json' が PC 用で、'workspace-mobile.json' が iOS などモバイル用です。このワークスペース情報は、デバイスごとに毎度変わる情報です。これらが共有されるのは良いことがありません。と言うことでこれらのファイルは無視です。

    デバイス毎のプラグインの enable/disable は無視

    .obsidian/*-plugins.json

    'core-plugins.json' が Core のプラグインリスト。'community-plugins.json' が Community プラグインリスト。これらを指定しています。

    最初は対象にしていたのですが、デバイスによって使える・使えないがあったりして、強制的に disable されたりして不都合が多いです。終いにファイル消えました。
    ですから、これらのファイルも無視。

    固有の表現まわりの設定も無視

    .obsidian/appearance.json

    一緒にしてもいいやと思ったら、どうも OS 毎に異なる仕様があるようです。このファイルもぎったんばっこんして、うっとうしかったので無視。

    プラグイン毎のファイル

    デバイス毎の recent-files も無視

    .obsidian/plugins/recent-files-obsidian/data.json

    これも当然と言えば当然ですね。デバイスごとに見ているファイルは異なりますから、設定だけ同期することにして、最近見たファイルのリストだけ無視。

    obsidian-git も iOS, iPad OS では使わないので無視

    .obsidian/plugins/obsidian-git/data.json

    ゆくゆくは対象とする日がやってくるかもしれませんが、現時点では Working Copy が全てやってくれています。なので、デバイス毎に設定するよう、このファイルも無視しています。

    ここまでがいわゆる設定ファイル系です。

    同期されたくないノート

    仕事のファイルも無視というか同期されたら困る

    4[0-9]_*/

    最後は、仕事用のフォルダ群です。

    私のディレクトリ構成上だからということですが、ルートフォルダの頭 2桁を数字にしてフォルダを作っています。40番台のフォルダには仕事用のノートを入れるようにしています。このフォルダ構成もまだ確定はしていませんが、仕事関係は40番台としておけば、今後もそう困ることもないだろうと考えています。

    ちなみに、今はこんな構成です。Salesforce っぽいですね。各フォルダの下に想定されるようなフォルダができて、更にその下に日付のファイルを作るようにしています。それらがいわゆる Activity です。

    41_Accounts/
    42_Opportunities/
    43_Contacts/

    このあたりは、まだどのようにするのが良いか手探りのところなので、良さげな構成ができたら、また共有します。

    と言うことで、私の行き着いた Obsidian を git 運用するための .gitignore 集でした。

    #obsidian


     
     
    元IBMのSalesforceITアーキテクト。 ITアーキテクチャの深淵から、日々の何気ない生き様まで、思考の軌跡を「毎日」綴っています。 座右の銘は「人生即是遊戯」。 家族とPerfume、オーディオを愛する私の遊び場が、あなたの日常のちょっとした刺激になれば幸いです。

    あなたへのおすすめ