3

私はgitリポジトリで動作する小さなソフトウェアの開発に取り組んでおり、いくつかのテストを記述できるようにしたいと思います。そのためにtest-repo、プロジェクト内にそれ自体がgitリポジトリであるフォルダを作成しました。私のテストでは、そのリポジトリを参照して、リポジトリに対して実行するコマンドが正確に既知の状態であることを確認します。

私の質問は、そのネストされたリポジトリをプロジェクトのメインリポジトリの一部としてバージョン管理できますか?これは、サブモジュールが解決する問題と実際には同じではないことに注意してください。ネストされたリポジトリは、外部から参照されるソフトウェアではなく、実際には囲んでいるプロジェクトの一部です。

4

2 に答える 2

3

問題は、gitが独自の.gitファイルを検出し、それらを操作できないことだと思います。ただし、テストリポジトリの.gitフォルダの名前を別の名前に変更すると、たとえば_git機能します。テストでGIT_DIR変数または--git-dirコマンドライン引数を使用してフォルダーを指定するだけです。

于 2013-01-31T20:23:32.880 に答える
0

「外部から参照されるソフトウェア」ではありませんが、サブモジュールは、リポジトリの既知の状態をキャプチャするのに役立つという点で、依然として優れたアプローチです。

どちらかと言えば、両方repotest-repo親リポジトリ内に配置したい " project":

project
  repo
  rest-repo

repoそうすれば、との両方の正確なSHA1を記録できtest-repoます。

于 2013-01-31T20:50:08.123 に答える