gitで管理し、ステージング環境を構築しよう

個人で受託案件を受けていたら、gitで管理していないしステージング環境もないという状況でした。

その会社は、エンジニアが不足しているのか、ホームページの制作は外注したそうで、ホームページの見た目は素晴らしかったが、中身のコードはぐちゃぐちゃでした。

gitで管理してない恐怖

受託案件に関わらず、全ての開発においてgitを導入すべきだと思っています。

gitで管理していれば、作業ログが残るのでどこがどのように修正されたかがわかります。何か不具合が起こった時に、原因を突き止めやすいです。

さらに、何か不具合が起こった場合に、コマンド一つで不具合を起こす前の状態にロールバックすることができます


逆にいうと不具合が起こった場合に、原因を突き止めにくく、不具合の修正が遅くなるということです。

小規模の案件ならまだマシ...と思うかもしれませんが、それは間違いだと思います。小規模案件でもバグは起こるし、訪問者がサイトを訪れた時にバグってたら信用を失うからです。


ステージング環境が無い恐怖

ローカルで作業をしてそのまま本番環境にアップするのはとても危険です。なぜなら、ローカルと本番環境は細かい「設定」が異なる場合が多いからです。

サーバーも違えば、データベースの設定も違うかもしれません。しかし、ステージング環境を作れば、本番とほとんど同じ設定で、サイトの状況を確認することができます。

「設定」が違うと、ローカルではイケてたのに本番環境でなんかバグってるという状況に陥ることがあります。なので、一回ステージング環境を挟んで、そこで正常に動作していれば本番環境にアップすれば良いし、バグってたらステージング環境上で原因を探せば良いでしょう。


ちなみに、ステージング環境を作るのは簡単です。

サブドメインを作成して、本番環境で用いているファイルを全てサブドメインにコピーして、Basic認証を導入すればOKです。(使用するデータベースを分ける分けないはお任せします。)


終わりに

とりあえずgitで管理して、ステージング環境を構築するのはどの案件でも必須だと思っています。

エンジニアならgitやステージング環境の構築方法を知っておいたほうがいいですし、サイト担当者ならそういうのが必要なんだ〜というのを知っておくべきだなと思いました。


この記事が気に入ったらサポートをしてみませんか?