AnDeriensのブログ

個人的なブログです

BoostnoteのノートをGitで管理

boostnote.io

Boostnote、とても使いやすいMarkdownエディタで重宝しています。

ただ、基本的にはローカルで使うエディタで、複数端末間で同期しようとすると少し工夫がいるっぽいので、どうしたもんかと思ってました。

まあエンジニアらしくGit管理がいいかと思い、簡単にベースだけ作ったので、その内容をノートしておきます。

後から調べたらDropboxを使う方法とかあって、こちらの方がいいんじゃないかという気もしてますが、Dropboxはすでにいっぱいで課金するのもあれなので、Gitで無料でやりましょう。

現時点でまだ、細かいケース(conflictするケースなど)への対応とか、自動保存とかできていないので途中経過という感じです。随時更新していく予定。

Gitにリポジトリを作る

$ ls .
attachments             boostnote-git-upload.sh boostnote.json          notes

boostnote-git-upload.shは、git pushをコマンドでサクッとするためのスクリプトです。後述します。

attachments は画像などのアップロードファイル。 boostnote.json は みた感じディレクトリ管理のファイル。 notes 以下にcson形式でノート本体のデータがあります。

アップロードスクリプト

アップロードが面倒だとリモート更新しなくなるので、コマンド一発でアップロードできるようにしたい。

boostnote-git-upload.sh を用意しました。

#! /bin/bash
MESSAGE=`date`

git pull origin master
git add -A
git commit -m "commit at $MESSAGE"
git push origin master

コミットメッセージには、日時が入るようにしてます。

エイリアス作成

わざわざこのスクリプト叩きにいくの面倒なので、エイリアス作ります。

僕はzshを使っているので、~/.zshrc

alias boostnote-upload="cd ~/Boostnote && ./boostnote-git-upload.sh"

としておきました。

これで、コマンドラインboostnote-uploadと叩けば、アップロードしてくれます。

作業の終わりにこのコマンドを叩けば完璧ですね。

最初にも書きましたが、改善の余地ありありなので、改善していきます。