Gitというのは共同でWeb開発をする際に利用されるものですが、そもそも何なのかご存じでしょうか
今日はGitについて勉強していきましょう
そもそもGitとは何なのか
Wikipediaによると
Gitというのは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型のバージョン管理システムである ※Wikipedia参照
と書かれてあります
共同開発ということは書かれてありません
ではどんな点で共同開発をする際にGitを利用することにつながるのでしょうか
Gitというのは、分散型でバージョン管理をするシステムとあります
これがGitの特徴の一つになります
バージョン管理とは
Gitは先ほどお伝えした通り、分散型のバージョン管理システムです
分散型とバージョン管理システムの二つを同時に説明するのはわかりずらくなってしまいますのでいったんバージョン管理について説明をしたいと思います
バージョン管理というのは、ずばり、コードを記録していくことです
コードを書きなおすなどすると思わぬ不具合が出てしまったり
エラーが起きてしまったりということがあります
意図せずデータを上書き保存してしまうなんてこともあるかもしれません
そんな時にトラブルを回避する方法があります
それは、不具合が起こっていないトラブルが起こる前の状態にもどすことです
そうです、バックアップを取っておくことで、それが可能になりますね
このように、更新をする前にこまめにバックアップを取って、コメントを残していくことがバージョン管理です
バージョン管理の便利な点
バックアップを取ってというだけであれば、Gitを使わなくてもファイル名を分けて保存すればいいのでは?と思った方もいらっしゃるかもしれません
普段仕事の文書を作っていて思いますが
「ファイル名考えるの面倒」じゃないですか?
しかもバックアップとなるとなおさら似たような名前になって面倒ですし、さきほどお伝えした失敗の一つですが
間違えて上書き保存をしてしまうというケースも起こりがちです
Gitを利用すると、名前などを考えずにその時点でのバックアップを取れるしいつ更新したものかも一目でわかるようになっています
また、ルールが決まっている(名前というよりいつ更新したものかがわかる仕組みになっている)ので、あとで見てわかりやすいです
そして、先ほどちらっと伝えましたが、更新時にコメントを付けることができるため、どういった意図でコードを書き替えたのかがあとでコメントを見ればある程度わかるようになります
地味に便利だと思いませんか?
そして、これが私的にもっとも便利だと思ったのが
現在のコードと過去のコードを比べたり過去の任意のタイミングのコードと、それ以前の過去のコードとの違いを比べて確認することができることです
これで何か不具合が起こった時に、その原因を突き止めることがしやすくなります
これは非常に便利です
順にバックアップを見ていけばわかるわけです
以上がバージョン管理の説明です
では次に分散型について説明をしていきます
分散型とはどういうことか
まずどういう仕組みを分散型というのかというと
リモートサーバなどにある中心リポジトリ(ローカルでいうフォルダ)の完全なコピーをローカル環境である自分のPCなどに作成して、そのローカル環境で作成を行う点を指して分散型といっています
例えば
Aさんがindex.htmlを作ってBさんがstylesheet.cssをつくるという形で共同してWeb制作をする場合
Aさんが作成したindex.htmlを共同の作業場である中心リポジトリにそのファイルを置きます
Bさんはそのコピーをローカル環境に落とし込んで利用することができます
そうすることでオフラインでも作業ができますし、競合することもありません
また、共同で作成した場合に気を付けないといけないことがあります
それは、ファイルの更新です
Aさんがファイルに修正を加えたとき、それをBさんが確認する必要があります
ここで先ほど説明したバージョン管理が役に立つのです
どのような意図で書き換えられたか一目でわかるため、迷いも生じにくいです
このように、Gitを使うことで共同で作業がしやすくなるのです
今日の記事はここまでです
次回はGitのインストールと環境構築を説明します
コメント