VSSをいきなりGitへ切り替えてみた

最近の仕事では基盤となるバージョンを1つ持って、ユーザーさん毎にカスタマイズして提供するようなことをしています。
ずーっとVSSでソース管理をしていたわけですが、さすがに限界。
redmineは何年か前に運用を始めていたんだけども、VCSがダメだとドウシヨウモナイです。
VSSのサポートなんかとっくに切れてますし。

というわけで、7月くらいにスパッとGitへ移行しちゃいました。
技術的な話はそこらにいくらでも転がってるので、運用面について書いておきます。

VSSの何がダメか

まず、VSSを切り捨てる理由を挙げていろんな人を納得させなきゃなりません。

  • ユーザーごとのカスタマイズ管理がしにくい(ブランチ機能はあるけど、マージがクソなので実質的に不可能)
  • 遅い/落ちる(システムがなかなか大規模なのでソースを全部取得するのに30分くらいかかります。途中で誰かがチェックインするとお亡くなりになります。
  • ブランチを使う気になれないので、リリース時期じゃない修正もとりあえずチェックインしちゃう。(リリース作業が阿鼻叫喚)

Gitでクリアできるのか

VSSのダメなところはまだまだありますが、とりあえずこれくらいにしておきます。Visual Source Shredder なんて渾名がすべてをあらわしています。
で、こいつらをGitで解決できるんか?って話ですが、

  • ブランチ管理が比較的簡単
  • 高速だし、途中で誰かがpushしてもpullやcloneが死んだりしない

ということで、すべてカバーできそうです。
すでに他のプロジェクトで実績のあるSVNって手もありましたが、

  • 大規模開発では速度面で不満
  • ブランチ切りまくる運用には不向きそう
  • 個人的興味(内緒)

ってことでGitを推したところ、めでたく通りました。