Gitの管理ディレクトリを分離する

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)
 

著書紹介

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Akira Hayashi (林 晃)のアバター Akira Hayashi (林 晃) Representative(代表), Software Engineer(ソフトウェアエンジニア)

アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn

目次