TortoiseGitとは?Windowsユーザーなら今すぐ使うべきGitクライアント

みなさん、TortoiseGitという素晴らしいツールを聞いたことがありますか?

GitはCUIベース(コマンド)で操作するためコマンドを覚える必要があります。そういった点から初心者の方やデザイナーさんには少し取っ付きづらい面もあります。

しかし、TortoiseGitを使えば普段使っているWindowsでマウスなどの操作を行うだけでGitのコマンドを発行することができます。とても便利じゃありませんか?

この記事ではGitがまず何か、そしてTortoiseGitはどんなことができるのか、実際にどうやって使っていくのかを見ていきます。Windowsじゃなくて、MacやLinux版はないのかと気になっている方も一番最後の章で答えているのでご覧ください!

目次

Gitとは?

まずGitとはなにかですが、一般的にはバージョン管理ソフトと呼ばれる部類のものになります。ざっくり簡単に表現すると「様々なファイルの追加・編集・削除などの内容を保存しておき、別のコンピュータでも同じ状況を再現することができる」ものだと考えていただくのが良いかと思います。

これでもわかりづらいですかね? 例えば、小説を書いていたとします。途中から大幅に内容を変更したい場合、一度ファイルのバックアップをとってから大幅に内容を変更することがあるかと思います。

しかし、この内容を変更するたびにファイルのバックアップが増えていきます。また、バックアップが増えていくとファイルの数が多くなるためあとからロールバック(巻き戻し)したい場合は手動で検索するなりとても面倒で手間がかかってしましますよね?

Gitを使うことで変更をしてもあとから特定の編集地点までロールバックすることができるようになります。この際にファイルのバックアップを手動で取る必要はありません。また、普段は家のPCで作業していてたまに気分転換するためにカフェでノートPCで作業するとします。

このときにもGitのリモートリポジトリと呼ばれる場所にファイルがアップされていれば(これはコマンドでファイルを登録するようなイメージです。)、カフェでノートPCで作業する際にも家で作業していた内容をそのまま利用することができます。

TortoiseGitとは?

TortoiseGitとは先程解説したGitをより扱いやすくするために開発されたWindows用ソフトウェアです。無料で扱うことができ、コマンドを打ち込んで実行するという少し初心者にはハードルの高い状態をこのTortoiseGitが解消してくれます。

TortoiseGitを使えばファイルを右クリックして、ファイルの追加、コミットができたり、プッシュもできるようになります。そういった基本操作だけでなく、ブランチの作成やマージといった事もでき、一通りの作業がマウスだけでできてしまうという素晴らしいソフトウェアです!

TortoiseGitをインストールするには

Git for Windows
https://gitforwindows.org/

TortoiseGit
https://tortoisegit.org/

この2つを導入する必要があります。TortoiseGitでは裏でGit for Windowの機能を使っているためこのGit for Windowsを先に入れておきましょう。 

インストール方法については次の記事がとてもよくまとまっており、かなりわかりやすいです。画像とともに手順を追って説明しているため、「簡単に導入できるか不安」と感じている人でも簡単に導入できるでしょう!

https://qiita.com/SkyLaptor/items/6347f38c8c010f4d5bd2

TortoiseGitはこうやって使おう!

この章ではTortoiseGitを導入した後に実際によく使う基本操作をまとめてみました。忘れてもこの記事を見ればいつでも思い出せます!

リポジトリ作成

Gitにはリポジトリというバージョン管理に必要なスペース(器)があります。このリポジトリを作るにはひとつフォルダを作り、フォルダの中で次のようにします。

押すと次のような画面が出てきます。

Bareを生成にチェックを入れないでOKを押します。

正しく作成されるとこのように表示されます。また、作成されたかどうかを確かめるために作成したフォルダの中に.gitという隠しフォルダがあるかどうか確認してみましょう。

このように隠しフォルダがあればリポジトリが作成されました!

ファイル追加

では次に、ファイルを作成しそのファイルを管理対象(つまり、ファイルを追加)にしてみましょう! まず、テキストファイルを作成しておきます。

そのテキストファイルにマウスカーソルを合わせて、右クリックを押しメニューを表示させた後継ぎのように「追加」メニューをクリックします。

追加が正しく終わるとこのようなウインドウが表示されます。

OKを押した後に追加したファイルのアイコンを見てみるとアイコンの下の方に「+」という青いアイコンが表示されているのがわかります。「このファイルはバージョン管理対象ですよ」という意味の表示になります。

コミット

ファイルを追加した後はコミットしなければなりません。コミットもとても簡単です。コミットしたいファイルにマウスカーソルを合わせて右クリック。メニューを出して「コミット」を選ぶだけでファイルのコミットができます。

このメニューを押すと次のようにコミットウインドウが出てきてコミットメッセージが記入できます。

ちなみに、コミットメッセージを記入するまではコミットボタンを押すことができません。コミットボタンを押すと次のようにコミット処理が走り完了します。

リモートリポジトリにプッシュ

コミットと来たら次はプッシュですよね。

フォルダを開いた状態で右クリック→「TortoiseGit」→「プッシュを選択」します。選択すると次のようなウインドウが表示されます。

初回のプッシュはプッシュ先を登録していないため上記の「管理」というボタンからプッシュする先となるリモートリポジトリを登録しましょう!

URLとプッシュURLを記入し「新規に追加/保存(A)」をクリックします。

その後OKボタンを押して閉じます。さっきのプッシュ画面に戻ってくるのでプッシュ画面でOKを押すとプッシュが始まります。プッシュが正しくできると正しくできた旨のメッセージが表示されるため完了となります。

もし、失敗した場合はエラーメッセージと共にウインドウが表示されるためリモートリポジトリの設定が間違っていないかどうかよく確認してみましょう。

ブランチの作成

ブランチは枝分けをすることができる機能です。

ブランチ作成自体もとても簡単で右クリック→「TortoiseGit」→「ブランチを作成」を選択します。ブランチ名を記入しOKを押すことでブランチを作成することができます。

作成した場合特に何のメッセージも表示されないかと思います。次のブランチの切り替えでブランチが正しく作成されているか見てみましょう。

ブランチの切り替え

作成済みのブランチを切り替えてみます。

右クリック→「TortoiseGit」→「切り替え」を選択します。選択後、ブランチの切り替えウインドウが出てくるためここで過去作成したブランチを選択します。

切り替えたらOKを押すことでブランチを切り替えることができました!

ブランチをマージする

ブランチシリーズ最後に、ブランチをマージしてみましょう。枝分かれしたものを統合する機能です。

右クリック→「TortoiseGit」→「マージ」を選択します。

マージブランチを選択してOKを押すことでブランチが統合されます。これもそこまで難しくないですよね!?

TortoiseGitはWindowsでしか使えない?

一通りTortoiseGitの基本的な使い方を解説してきましたが、TortoiseGitはWindowsでしか使えないのでしょうか? 残念ながら、Windows版しかありません・・・。

MacではTortoiseGitがないためSourceTreeといったツールを使うのをオススメします。

また、Linux(Ubuntu)ではRabbitVCSというTortoiseGitに似たようなソフトウェアがあるためそちらど導入してみるのはいかがでしょうか?

https://kokufu.blogspot.com/2012/05/ubuntu-tourtoisegit.html

まとめ

いかがでしょうか? TortoiseGitはWindowsを使っているユーザーなら誰でも使えます。

そして、コマンドを打たなくてもマウス一つでポチポチGit操作ができるためとても簡単で見やすくファイルの状態を管理することができます。使い方は簡単ですが、もし使い方を忘れてしまったらこの記事を思い出してくださいね!

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン

目次