Posted at

GoogleDrive+gdriveで設定ファイルを管理する

More than 1 year has passed since last update.


これなに?

GoogleDriveで.zshrcなどの設定ファイルを同期的に管理する方法の忘備録


Dropboxじゃだめなの?

もちろんDropboxでも良いが、僕の使い方が悪いせいで不必要なところで同期されてしまうことが多々あった(+無料版だと容量が少ない)ので、gitのように意識的に同期できるような感じにしたかった


使うもの

GoogleDriveをCLI上で使えるようにするために、gdriveをインストール。macならば

brew install gdrive

で完了


方法


1.認証

$ gdrive list

とすると、URLが出てくるので、そこからtokenを取ってきて、打ち込んで認証完了。超簡単


2.ローカルのディレクトリを作成してupload


$ mkdir [ディレクトリ名]

として、ローカルに同期用のディレクトリを作成

そのディレクトリをGoogleDriveにアップロード

$ gdrive upload --recursive [ディレクトリ名]


3.同期するためにIDを入手

$ gdrive list | grep "[ディレクトリ名]"

でIDを入手。あとで使うので控えておく


4. シンボリックリンクを貼る

作成したディレクトリの配下に.zshrcなど設定ファイルをコピーし、シンボリックリンクを貼る

$ mkdir [ディレクトリ名]/dotfiles

$ cp ~/.zshrc [ディレクトリ名]/dotfiles
$ ln -s [ディレクトリ名]/dotfiles/.zshrc .zshrc


5. ディレクトリを同期

最後にディレクトリを同期する先程のIDを使用して、

$ gdrive sync upload [ディレクトリ名] [ID]

とすると、ディレクトリが同期される。ちなみに普通のuploadだと、同じ名前のディレクトリがGoogleDrive上にもう一つ作られてしまう

$ gdrive sync list 

と打ち込んで、対象のディレクトリが出てくれば成功

いちいち打つのは面倒なので、

alias gsync='gdrive sync upload [ディレクトリ名] [ID]'

aliasを設定しておけば、gsyncと打つだけで内容が同期される


別のPCにダウンロード

別のPCに対象のディレクトリをダウンロードして同期したいときは

$ gdrive download [ID]

あとは上記の4.以降と同様