Blogger Labo:TortoiseGitでBloggerテンプレートのバージョン管理をする

プログラミング学習を始めてから「Git(ギット)」というツールでプログラムのバージョン管理ができることを知った。エンジニアの間では当たり前に使われているツールのようで、素人でも知っておくと結構便利に使えるものだと思う。というわけで、このツールをざっくりと紹介しておくことにする(下記はWindows版の説明)。


概要


Gitとは?


Blogger Labo:TortoiseGitでBloggerテンプレートのバージョン管理をする

Git(ギット)とは、分散型バージョン管理ツールで、コマンドで操作するものになる。

簡単に言えば、ファイルを変更していく過程で、ファイルを複製してバックアップすることなく、一つのファイルにセーブポイントを設けることができるという代物。また、その操作はターミナル(黒い背景でコマンドを打って操作するやつ)で行うことになるので、扱うにはコマンド操作の知識が必要になる。

・Git公式サイト:https://gitforwindows.org/

TortoiseGitとは?


Blogger Labo:TortoiseGitでBloggerテンプレートのバージョン管理をする

TortoiseGit(トータスギット)とは、GitをGUIで操作できるようにするツールのこと。

簡単に言えば、デスクトップにフォルダを作成するように、ファイルを右クリックしてメニューを開き、行いたい操作を左クリックで選択するといった形で、Gitを簡単に操作できるようにしたものである。

こちらを使うと、コマンド操作の知識がなくてもGitを操作できるようになる。

・TortoiseGit公式サイト:https://tortoisegit.org/

Gitの概念


Blogger Labo:TortoiseGitでBloggerテンプレートのバージョン管理をする

Gitは分散型のバージョン管理ツールで、プログラムの共同開発で活躍しているものらしい。共有フォルダと違って更新ごとにログを残せるので "誰が、いつ、何のために" 更新したのかが分かるようになっており、ファイルの保存先のクライアント(自分のPC)とサーバ(web上)に分散されているのが特徴。

使い方については、Gitにファイルを登録しておき、そのファイルの更新情報をリポジトリ(保管庫)と呼ばれる区画に保存していく感じになる。リポジトリはローカル(クライアント側)とリモート(サーバー側)に作ることができ、共同開発をする場合はローカルに保存したものをリモートにアップロードして、一つのプログラムを作り上げていくことになるらしい(共同開発したことないので詳しくはわからないけど…)。

個人で使う場合は、基本的に自分のPCに「Git」をインストールすればOK。必要に応じて「TortoiseGit」を入れたり、リモートリポジトリを使うことのできるサービスである「GitHub」に登録したりする。

残念ながら人に説明できるほど理解できていないので、自分が参考にさせていただいた動画を紹介させてもらう。以下の動画では、Gitの概念、Git・TortoiseGitのインストール、これらの使用方法、まで解説されているので一通り見れば実際に使用できるくらいには理解できると思う。

【参考動画(再生リスト)】


テンプレートをバージョン管理すると便利な理由


テンプレートを自作すると発生する問題


テンプレートは、作り始めは記述が少なくて全体像を把握するのが楽なのだが、作り上げていくうちに相当長いコードになり、人のコードを拝借したり、コードを切って貼ってをしまくっていると、途中で想定外の問題に遭遇してコードを以前の状態に戻したくなることが多々ある。

きちんとコメントアウトして管理していれば問題ないのだが、一旦無茶苦茶になってしまうと手作業で以前の状態に戻さなければならなくなったりするので、こうなってしまうと作業時間もかかるし、メンタル面もダメージが大きい。特に人の書いたコードを書き換える場合は、こういう自体が起こりやすい。

バージョン管理をする前の対処


上記のような問題を避けるため、以前はファイルをいちいち複製して「ファイル名(バージョン番号)」のように管理していた。これはこれで、問題は避けられるのだが、ファイルの複製作業や内容を確認するためにエディタをいくつも開くなど、面倒な作業をすることになるので、この方法では使い勝手の悪さを常に感じていた。

Gitでファイルのバージョン管理を始めたら


Gitでバージョン管理を始めると、これだけで更新ログの作成と閲覧ができるようになるので、ファイルの複製作業などの面倒な作業は必要なくなり、元の状態に戻すのも楽になった。Githubを使えばクラウドに保存しておくこともできるので、出先でも確認することができるようなるなどの利点もある。なので、テンプレートをはじめ結構長丁場になる作業を始めるのであれば、Gitでバージョン管理することをおすすめしたい。