ボム君.com

エンジニア向けメモの管理方法

最近、仕事やプライベートで取るメモに何を使うか考えていて、とりあえずこの方法で1ヶ月くらい運用して問題なかったのでまとめました。

TL;DR

Github の private リポジトリで管理すると良さそう

メモ機能に求めるもの

自分がメモ機能に求めるものはこんな感じ

  • markdownシンタックスハイライト、 補完機能がある
  • 仕事とプライベートのパソコンそれぞれで同期させられる
  • 軽い、使いやすい
  • メモの管理がしやすい
  • preview の機能は別になくてもよい

設定方法

設定方法は簡単で普段から Github 使っている人なら問題なくできると思います。
の中は自分が設定した内容。 )

  1. Github で private リポジトリを作成する - memo リポジトリ作成
  2. ローカルに clone する - ~/workspace/ に git clone
  3. shell の自作関数を作成(後述)
  4. memo ディレクトリ内に好きなようにメモを書く

Pros/Cons

Pros

  • 使い慣れている Editor が使える
  • シンタックスハイライト, 補完機能が使える(Editor にあれば)
  • 複数のパソコンから編集可能
  • ディレクトリ管理ができる

Cons

  • Github の private リポジトリを作るためには課金が必要($7/month)
  • 毎回 memo ディレクトリを開くのがめんどくさい
  • 毎回 push や pull を実行しないといけないのがめんどくさい
  • Github が落ちていると同期できない

Cons の解決

Github の private リポジトリを作るためには課金が必要

自分の場合はもともと private リポジトリを使えるように課金をしていたので問題なかったです。
memo のためだけに契約するとなると高い気がしますが、private リポジトリ作れると個人の開発が捗るので作ってみてもいいかもしれません。
ちなみに BitBucket なら無料で private のリポジトリが作成可能なのでそっちで管理しても良いと思います。

毎回 memo ディレクトリを開くのがめんどくさい

zsh で自作関数を作って memo と入力すると memo ディレクトリを VSCode で開くようにしました。

下のコードを ~/.functions などに書いて、$ source ~/.functions を実行すると $ memo で memo ディレクトリを VSCode で開けるようになります。
( Editor やディレクトリは適宜修正してください。)

function memo() {
  open -a Visual\ Studio\ Code ~/workspace/memo;
}

毎回 push や pull を実行しないといけないのがめんどくさい

これも上で作った memo 関数を拡張してmemoディレクトリを開く前に git pull してくるようにしました。

function memo() {
  echo 'pulling latest...'
  cd ~/workspace/memo
  git pull origin master
  cd -
  open -a Visual\ Studio\ Code ~/workspace/memo;
}

ただ push についてはまだ対応してません。
VSCode で特定のプロジェクト閉じるたびに commit して push させるとかできるのかな。。

Github が落ちていると同期できない

1年に1回くらいの頻度で Github が落ちる印象がありますが、この問題は他のサービス使っていても同様ですし、ローカルで編集はできるのでまだましかなと思っています

Cons 改訂版

上記の対応を入れると結果的にマイナスになるのはこれくらいでしょうか。 - Github が落ちていると同期できない(ローカルでの編集は可能) - 毎回 push を実行しないといけないのがめんどくさい

まとめ

もしメモの管理方法で悩んでたり興味がある方は使ってみてください。