スタッフブログ
私が初めてさわったバージョン管理システムはMS-DOS用の「RCS」というシステムでした。今からもう20年以上も前の話です。
その後オープンソースと関わるようになってから「CVS」「Subversion」を使うようになりました。
そして今使ってるバージョン管理システムが「Git」です。といってもあれこれ検討してSubversionからGitへうつったわけでなく、周囲の開発者さんたちが「Git便利!」って言ってほぼ全員Gitへ移行してたり、XOOPS CubeのリポジトリがSubversionからGitHubへ移行したりとなって、ようやく自分でも使い始めた格好です。
そうやって使い始めたGitですが、Subversionと同じ程度には使えるようになってきたのですが、他の開発者さんの使い方を観察するともっと色々便利なコマンドや使い方があるようなので、一通りざっくり把握してみようと思って、「Gitポケットリファレンス」をパラパラと読んでみました。
というわけで「Gitポケットリファレンス」を毎朝数ページずつ読んでみたんですがすごいですねGit!
Subversion使ってたときに「あー、○○したいんだけど、うまい方法ないんだよなぁ」って思うことがほぼ解決してます。
というか、開発中に遭遇するバージョン管理にまつわるあれこれに対応する方法が網羅されてそうな印象です。
たとえば 、ファイルの各行の変更履歴を出力する "git blame"
プログラムの不具合が発生したときにプログラムコードを追っかけてると「あれ?なんでこんな処理してるんだろ?」って疑問に感じるコードにあたることがあります。
そんなときに過去バージョンをチェックして**いつごろその処理が書かれたのか**を調べて、関連するRedmineのチケットや議事録をもとに「そもそもどう意図で行われた変更か」というのを調査して、意図にあったコードになってるか確認します。
この「いつごろその処理が書かれたのか」を調べるのがgit blameを使うと簡単にできちゃうんですよね。
git blameで「このファイルの何行目から何行目はいつ更新された?」を調べられるので先ほど書いたシチュエーションではめっちゃ役立ちそうです。
この git blameをはじめとしてほんとかゆいところに手が届くバージョン管理システムになってますね。
というわけで、最近gitを使ってみた感触やこの本から得られた知識から考えてもこれからのバージョン管理システムは git がよさそうだなと思いました。
その後オープンソースと関わるようになってから「CVS」「Subversion」を使うようになりました。
そして今使ってるバージョン管理システムが「Git」です。といってもあれこれ検討してSubversionからGitへうつったわけでなく、周囲の開発者さんたちが「Git便利!」って言ってほぼ全員Gitへ移行してたり、XOOPS CubeのリポジトリがSubversionからGitHubへ移行したりとなって、ようやく自分でも使い始めた格好です。
そうやって使い始めたGitですが、Subversionと同じ程度には使えるようになってきたのですが、他の開発者さんの使い方を観察するともっと色々便利なコマンドや使い方があるようなので、一通りざっくり把握してみようと思って、「Gitポケットリファレンス」をパラパラと読んでみました。
開発中の様々な要望に応える方法がほとんどありそう
というわけで「Gitポケットリファレンス」を毎朝数ページずつ読んでみたんですがすごいですねGit!
Subversion使ってたときに「あー、○○したいんだけど、うまい方法ないんだよなぁ」って思うことがほぼ解決してます。
というか、開発中に遭遇するバージョン管理にまつわるあれこれに対応する方法が網羅されてそうな印象です。
たとえば 、ファイルの各行の変更履歴を出力する "git blame"
プログラムの不具合が発生したときにプログラムコードを追っかけてると「あれ?なんでこんな処理してるんだろ?」って疑問に感じるコードにあたることがあります。
そんなときに過去バージョンをチェックして**いつごろその処理が書かれたのか**を調べて、関連するRedmineのチケットや議事録をもとに「そもそもどう意図で行われた変更か」というのを調査して、意図にあったコードになってるか確認します。
この「いつごろその処理が書かれたのか」を調べるのがgit blameを使うと簡単にできちゃうんですよね。
git blameで「このファイルの何行目から何行目はいつ更新された?」を調べられるので先ほど書いたシチュエーションではめっちゃ役立ちそうです。
この git blameをはじめとしてほんとかゆいところに手が届くバージョン管理システムになってますね。
というわけで、最近gitを使ってみた感触やこの本から得られた知識から考えてもこれからのバージョン管理システムは git がよさそうだなと思いました。