論文を書く時のあるある

論文、特に共著論文を書いているとき、よく次のような問題が起こることがあります。

これらの問題を人間の頭で管理しようとすると、とてもめんどくさいです。お金があって、TeXのソースのバージョン管理だけならOverleafに課金するのが一番面倒が無いと思います。お金がない、あるいはもっと細かく管理したい、またはプログラムのソースコードなども管理したい場合に役立つのが、バージョン管理ツールGitです。

Gitについて

Gitを使うと次のようなことができます。

使ってみる

Gitは個人で使っても有用です。ぜひ、使ってみてください。

インストール

VSCode

使い勝手の良いエディタであるVSCodeでは最初からgitを使うことができます。素のままでも問題なく使うことができますが、拡張機能を入れると使い勝手がよくなります。私は Git Graph という拡張機能を使っています。

コマンドライン

エディタは慣れれば使いやすいのですが、CUIの方が取っ付き易いという方も多いと思います。そんな方にはCUI版があります。Macなら最初から入っています。Windows の場合は、Gitに行くとバイナリーがおいてあります。

リモートリポジトリ

共同作業をするには、リモートリポジトリを作る必要があります。Dropboxやsshでloginできる普通のサーバーでもできないことはないのですが、専用のサーバーの方が便利です。自分でサーバーを立ててもよいのですが、普通の人にとっては面倒なので、GitHubを利用するのが便利です。

共同作業

プロジェクトを立ち上げると、どこかにリモートリポジトリを作り、メンバーみんながpushできるようにする。それぞれのメンバーは、まずcloneして自分のマシンにローカルリポジトリを作る。朝来て作業を始めるときにはpullし、他の人にどんな進展があったかをチェック。ローカルリポジトリへのcommitは頻繁にやる。自分の作業がキリの良い所まで来たらpushする。他の人がすでにpushしていて自分がpush出来ない時には、ひとまずpullしてからpush。みたいな感じで進んでいくのだと思います。

そうは言っても

こんな感じで作業をするためには共同研究者全員がツールの使い方にある程度慣れていなければならず、現状はすぐには難しいかもしれません。

ひとまずは、1人の作業で使ってみて、多くの人が慣れてくれば、こういうバージョン管理ツールを使った共同研究も容易になってくると思います。