GitHub 連携
帳簿は private な GitHub リポジトリに置けます。同じ帳簿がスマホでもパソコンでも開きます。通信するのはブラウザと GitHub の間だけで、あいだにこちらのものは何もありません。
ここでいう同期とは
二つの行為で、どちらもあなたが押します。「取り込む」はリポジトリにある方を持ってきて開きます。「送る」は書いたものを上げます。時間で動くものはありませんし、裏で勝手に動くこともありません。
通信はブラウザから api.github.com へ直接行きます。帳簿も、トークンも、同期したという事実すらも、こちらのサーバーが見ることはありません。
トークンについて
fine-grained な personal access token を、リポジトリ1つ・Contents の read と write だけに絞って作ります。動くのに要る最小です ── 他のリポジトリは見えませんし、他の場所であなたとして振る舞うこともできませんし、GitHub の他の用事に触らずにこれだけ失効させられます。
トークンはこのブラウザの中、帳簿と同じ保存領域に置かれ、api.github.com にだけ送られます。接続を解除すれば忘れます。
つなぐ手順
GitHub でリポジトリを作り、private にします ── あなたの帳簿だからです。中身は空で構いません。
オーナー名、リポジトリ名、帳簿を置く道を入れます。道の途中のフォルダは、無くても構いません。
トークンを保存します。ここでするのは「このトークンは誰のものか」を GitHub に尋ねることだけで、何も書きません。
あとは取り込むか、送るか。帳簿を何も開いていない状態なら、取り込むことがそのまま帳簿の始まりになります ── 途中から写しを取る、ということが無い以上、先に何かを作っておく必要もありません。
両方で書き換わっていたとき
スマホで書いた仕訳は、パソコンで書いた仕訳の後ろに並びます。ただし、どちらのテキストも「最後に合意した内容」から始まっている場合に限ります。普通に起きるのはこちらです ── 別の日に、二台が同じ帳簿の末尾に足していく形です。
そうでないとき ── 同じ行が両方で書き換わっていたとき ── は、混ぜませんし、上書きもしません。食い違っていると告げて、どちらもそのままにします。どちらを採るかはあなたにしか決められませんし、それを黙ってやるのが、数字が消える道筋だからです。
帳簿ごとにリポジトリを
会社の帳簿と家計簿は別のファイルです。だからこのアプリでも別の帳簿として持ち、それぞれにリポジトリがあり、望むならトークンも別にできます。切り替えは画面の隅で、切り替えるときには閉じる方に属していたものを全部置いていきます。
GitHub から見えるもの
リポジトリに入っているもの、つまりあなたの帳簿です ── リポジトリとはそういうものです。それ以外にこのアプリが GitHub へ伝えることはありませんし、同期したことがどこかに記録されることもありません。