Git使ってみた2
前にGitについて色々書いて以降もずっとGit使用していて気づいたことをまとめてみました。
・万が一サーバーが壊れた際の復元が簡単
Gitはローカルとサーバーのリポジトリがあるって前言いました。
この際仮にサーバーが故障等で使い物にならなくなった際に、SVNだと復元が出来るのかは分からないけど、多分色々難しいと憶測を立てます。
Gitの場合でしたら、ローカル先にも同情報のデータはあるわけで、リモート先のリポジトリ先を変更することで、すぐに復活出来ることは便利ですよね。
※実際に試したことないです
※あくまでローカルとリモートの同期を常に取っている場合です
・コミットミスでの損害が少ない
以前SVNでソースコードの管理を行っていたプロジェクトに入っていた時にあったことです。
ある担当者Aが機能を完成し、コミットを行いました。
その後に、私が担当した部分の機能が完成し、コミットする前に現在の最新ソースコードをマージしようと最新のソースコードをマージしました。
しかし、Aのコミットしたソースコードは実はバグだらけで、動かなくなってしまいました。その後も他の作業者が自分と同様に現在の最新ソースコードを
マージし、自PC上で動かそうとした際にエラーが多発。それが問題となってしまい、修復に時間を要したことがありました。
あまり詳しくは分からないんですけど、SVNはコミットした情報を取り消すというのは簡単じゃないらしいです。
その点Gitに対しては簡単です。ローカル先のコミット前の情報でコミットすることも可能ですし、例えばそのコミット前の箇所からもうブランチを分けてしまってもいいです。
こういう部分は実際に直面してみないと分からない部分が多いですが、実際にコミットの取り消し等はSVNより簡単でしたね。
正直な所、まだGitについては使いこなせてない部分が大半です。
最近は大規模なプロジェクトに携わった機会もなく、Gitでの管理も基本個人利用です。
ただ、今後SVNが衰退していきGitが大きくなっていくのは明白かなってぐらいにはGitは優秀だなって思います。
自分の会社はまだSVNを利用していますが、近いうちにGitに以降する方向性らしいです。
ただ、Gitの問題があるとしたらその機能性が多いってことですかね。
機能が多い = 覚えることが多いってことにもなります。
覚える為には時間がいる。時間がいるということはその分お金もかかる。
こういう部分がまだGitが浸透しない理由でもあるんですかねー?
それに機能が多いんで明確にルールを定める必要はあります。
SVNみたいに直感的に簡単にコミットをGitも同じようにしてたら結局は意味ないですし、リモート先へのコミットをするタイミング等、ルールは決めておいた方がいいです。
しっかりとした理解してもらえるような文章ではないですが今回はこんな所です。
現在Gitと連携して出来る他の管理ソフトも試している段階なので、それもいつかまた報告出来たらなって所で終わります。
大分走り書きなんで質問もあれば遠慮なく。