GitでもSubversionでもCVSでも、チェックアウト(Gitの場合はクローン)したディレクトリに管理ファイルや管理ファイルを入れたディレクトリが作成されます。
Webサイトの場合はコピーしたときなどに、このファイルが残ったままだと後悔されてしまうので削除するという作業が必要です。アプリ開発の場合でも、リソースファイルや外部のフレームワークを、アプリケーションパッケージにコピーする必要があるときにこのファイルが残っていると、良くないので削除します。
この作業はコピーも含めてスクリプトで自動化しています。手作業でやると忘れてしまうことがあるので、それを防止するために自動化します。
Gitに移行したので、早速スクリプトを修正しようと思い調べていると、Gitの場合管理ディレクトリを別の場所に置くことができるのですね。git cloneするときに「–separate-git-dir」オプションを使用すると外に出せます。Subversionと違って全ディレクトリに作成されるのではなく、トップディレクトリのみということも分かりました。(「find . | grep git」で検索して確認)
代わりに「.git」というファイルがトップディレクトリに作られるので、このファイルだけスクリプトでケアすれば良いようです。
参考にしたページ:
ウェブアプリケーションのGitリポジトリの先端を追いかける – 行動記録 (http://iwaim.hatenablog.com/entry/2013/01/17/164552)
目次