チャチャチャおもちゃの抹茶っちゃ

ゲームのこととかプログラミングのこととか。気が向いたら書く。ブログタイトルは友人が考えました。

【Git入門】Gitを使い始めたい人へ「Gitの導入」 ~A Beginner to Beginners~ 【その1】

次: 【Git入門】Gitを使い始めたい人へ「ローカルリポジトリの操作」 ~A Beginner to Beginners~ 【その2】

目次

この記事の生まれた経緯と目的

Gitというものを知っているだろうか?正直に言います、ぼくはこの前まで名前知ってるくらいだった。
ちょっと友人とコード書いたりした時に簡単に同期できたりしたら楽だよなーって思ったのでGitについて調べてみたのが始まりで、自分の学習ついでにその過程を残して後学者の助けに少しでもなればなという。 つまりどういうことかっていうと某「サルでもわかる」とかQiitaの記事とか読んでも「???」ってなってしまった(カタカナ語がおおくて毎回意味を確認したりしてたら頭にはいってこなかった)、躓いたところを書いて残しておこうというアレ。更にいざやってみると英語ばっかりで「うっ」となる割に自力で解読する元気がない人の参考になればいいなと。
最終的にはこれを読んだ人なら一緒にGit使って開発をうまく連携していくことができるようになることを目指していく。チーム開発を捗らせたい。
サークルのほうでもチーム開発する人いるだろうし役に立てば嬉しい。

Gitって何?

そもそもGit(ギット)ってなんなのか。Wikipediaをみると

Git(ギット)は、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。Linuxカーネルソースコード管理に用いるためにリーナス・トーバルズによって開発され、それ以降ほかの多くのプロジェクトで採用されている。Linuxカーネルのような巨大プロジェクトにも対応できるように、動作速度に重点が置かれている。現在のメンテナンスは濱野純 (Junio C Hamano) が担当している。(Wikipediaより)

「分散型バージョン管理システム」とは一体。   分散型とかいろいろついてるけど根本はバージョンを管理するシステムである。たとえば f:id:mattyan1053:20180720002452p:plain 自分で作ったものをどんどん更新していくとき、途中までの状態を別のフォルダーなどに保存しておいたりすることがあるだろう。バージョンを上げるたびにフォルダを複製して複製したものを書き直したりして作業してという作業を繰り返すのは面倒だし、量が増えてくれば管理がしにくい。バージョンが一つ変化したところでどこのところが変更されたのか探すだけでも一苦労である。更にバージョン情報のみでなく誰が編集したかという情報をいれたりすれば「sample_v3_mattyan1053」とか「sample_v3_name」みたいな同じバージョンを他の人が編集したもののフォルダーなどができてしまいわけが分からなくなりかねない。そこで登場するのがGitだ。 f:id:mattyan1053:20180720003825j:plain バージョンをツリー構造のように管理することができ(途中で分岐させたり、合流させたりできる)、常に作業する場所は同じでありながら、Gitを操作するだけで過去のバージョンに戻してそこから作業をやりなおしたりできる。また、フォルダーを複製するのと異なり変更点を保存するので、変更してない部分もすべて保存するような無駄もなく、どこが変わったのか、何を変更したのかだけを残しておくことができる。 f:id:mattyan1053:20180720005220j:plain 例えば上記のように、Version1からVersion2にするときに書き換えた時、「またVersion1に戻したいな」と思ったら通常一度Version2のwhileのところなどを消してVersion1と書き直さないといけないが、書き直すときにミスが発生するかもしれないし、たくさん書き換えてたら大変だ。もとのファイルを残してあればいいが、毎回別ファイルをつくるのはいただけない。ところがGitにVersion1を登録しておけば、そのファイルを複製することなくそのまま書き換えてVersion2にしても、すぐにVersion1の状態に変更分だけ戻すことが可能になるわけだ。 こうしたファイルの変更点の管理は、一つのファイルに限ったことではなくGit管理している複数のファイルで行うことができる。多くのファイルの変更を一括管理することができるということになる。 Gitの便利さがおわかりただけただろうか?

Gitのインストール

さてすぐにGitを始めたいところだが、当然Gitを使うにはまずGitをインストールしなければならない。次のURLから自分のOSにあったものをインストールしよう。
「Git - Downloads」 https://git-scm.com/downloads
f:id:mattyan1053:20180720011159p:plain
ぼくの端末がWindowsなのでWindowsで説明。てかたぶんWindowsが一番面倒。Linuxだとコマンドでインストールかな。yumとかそういう(あまりよくしらない)。macは同じようにGUIインストーラあるらしい? インストールするのはこれだけで構わない。下に「GUI Clients」とかいってGUI(マウスとかの操作)でGitを使えるようにするものもあるが、ここではCUI(キーボード入力での操作)でGitの操作をしていくつもりなので関係はない(お好みでインストールしてもかまわない) なぜグラフィカルな、わかりやすい操作方法のほうを利用しないのかというと、OS間で操作の違いが出てしまうことと、CUI(キーボード入力での操作)に慣れておいたほうがいいと思うので。実際慣れるとマウスでカチカチやるより早く作業が進む。最初は抵抗あるかもしれないが、手をしっかり動かすことで覚えていきたい。

さて、Gitインストーラがダウンロードできたら実行しよう。 f:id:mattyan1053:20180720012335p:plain
残念ながら全部英語です。諦めましょう。Nextをクリック。
f:id:mattyan1053:20180720012411p:plain
何もしないでNext押してもいいけどショートカットをデスクトップに作りたい人は上2つにチェックを、アップデートを日頃確認させたい場合は一番したチェックいれる。そしたらNext。
f:id:mattyan1053:20180720012541p:plain
Gitで使うエディタを設定。ファイル変更して更新したときに「何を更新したのか」書いたりするのに使うエディタになる。好きなの使えばよろし。
f:id:mattyan1053:20180720012648p:plain
環境変数ってやつ。わからなかったら素直に真ん中。Windowsでlsコマンドとか使いたいやつは一番下。一番上でやるとコマンドプロンプトでやらせてもらえない。
f:id:mattyan1053:20180720013244p:plain
HTTPS接続にOpenSSLライブラリ使うので上。わからなくても問題ない。
f:id:mattyan1053:20180720013518p:plain
改行コードの話。LFでおねがいします。Unix Style。わからなくてもOK。
f:id:mattyan1053:20180720013653p:plain
標準コンソールつかうよ。下。Next。
f:id:mattyan1053:20180720013736p:plain
追加オプション。全チェックで良いと思う。
これでInstallでOK。Git使えるようになりました!おめでとう!!

インストールできてるか確かめる

スタートメニューからGit Bashって奴見つけて起動するか、普通にコマンドプロンプトMacだとターミナル、Lunuxだと端末?)を起動する。そしたらコマンドで

$ git --version

と入力したらGitのバージョンが表示されればOK。
f:id:mattyan1053:20180720014910p:plain
こんな感じ。

お疲れ様でした!次から自分のPC内での操作かなー

次: 【Git入門】Gitを使い始めたい人へ「ローカルリポジトリの操作」 ~A Beginner to Beginners~ 【その2】