Prezto の設定を複数PCで同期させる備忘録

シェアする

シェル zsh の便利な設定をまとめて導入可能な prezto の設定を複数 PC で同期させるための細工についての備忘録です.なお,Prezto の導入や設定については

シェル zsh の便利な設定をまとめて導入可能な prezto 導入(...

とか

シェル zsh の便利な設定をまとめて導入可能な prezto を C...

をご覧ください.

今回の目標は以下の通りです.

  1. Cygwin と MacOS で同じものを使う
  2. Git で管理する(私の場合はローカルに GitLab サーバを立てています)
  3. 本家の更新に追従できるようにする.
Cygwin と MacOS で同じものを使う

単に if で OSTYPE を判定してやれば良いだけですね.例えば

を ~/.zshrc に設定すれば良い訳です.なお,Cygwin の cygstart と MacOS の open は互いに同じようなコマンドで,私の場合,どっちでも使えるよう実際に上のような設定を行っています.

Git で管理する & 本家の更新に追従できるようにする

まず,Prezto を使う最初の(1台目の)PC の設定は以下の通りです.なお,ローカルに立てている私的な Gitlab のサーバ名を gitlab.*****.local としておきます.

  • ローカルに Prezto を clone する.
  • origin の push 先を GitLab に向ける.

  • ローカルに hyt ブランチを切り,チェックアウトする.
  • remote のエイリアスとして hytorigin を定義し,push, pull 共に GitLab に向ける.
  • zprofile zshrc 等のリンクをホームディレクトリに張る.
  • 一旦,hyt ブランチの内容を GitLab に push する.なお,-u オプションにより hyt ブランチの上流ブランチを hytorigin/hyt に設定する.
  • master ブランチを GitLab に push する.

  • それぞれのブランチの上流ブランチを確認

  • hyt ブランチに個人的な prezto の設定を反映させ,commit し,GitLab に pull する.

そして,2台目以降の PC は最初の PC と同じ状態になるよう以下の通り設定します.

何でこんな面倒なことをしてるのか?

要するに本家とローカルの Git リポジトリを共存させたいからです.上の設定だと,

  • 本家: master ブランチ
  • ローカル: hyt ブランチ

の区分けとなり,通常は hyt ブランチを使う.個人的な alias の変更なんかは hyt ブランチで行いますので,hyt ブランチを個人的な Git サーバに push し,それを他の PC から pull すれば設定を同期できる.

じゃあ,本家がアップデートされたらどうするのかと言うと,

  1. master ブランチに切り替え pull & push
  2. hyt ブランチに戻り master を merge & push
  3. 他の PC で hyt ブランチを pull

すれば良い.本家を同期させる PC をどれか1台にしてしまえばこんな面倒なことする必要無いのですが,こういう設定のアップデートって,気が付いた時に手元で今使っている PC ですぐにやってしまいたい.だからこんな面倒なことをしている訳です.まぁ,何となく master ブランチの push は蛇足な気もしますが,面倒なのでこれで良いことにしておきます.

なお,これは以下のページを大いに参考にさせて頂きました.

私も「追跡ブランチ」って言うのをやめたいと思います.

スポンサーリンク
large rectangle advertisement

シェアする

スポンサーリンク
large rectangle advertisement