私はサブモジュールを持つプロジェクトを持っており、サブモジュールがクローンされているかのように、サブモジュールのディレクトリ.git
を再構築できるようにしたいと考えています。より詳細にはサブモジュールの.gitディレクトリを再構築する方法はありますか?
、私はgitのプロジェクトsuperproject
にサブモジュールsubproject
を持っている、と私はすでにやっていると言う:
git clone git://url.of.superproject
cd superproject
git submodule update --init
subproject
が指し、独自の.git
ディレクトリが、.git
ファイルを持っていませんディレクトリ../.git/modules/subproject
。 subproject
の実際の.git
ディレクトリが必要です。私が使用しているツール(Pythonのpip)は、subproject
ディレクトリを任意の場所にコピーしてgitコマンドを実行する作業を行うためです。
subproject/.git
ディレクトリを複製したかのように再構築する方法はありますか?私はディレクトリの他の部分への相対リンクを含んでいるので、.git/modules/subproject
ディレクトリをコピーするだけではなりません。 - 自分の質問に答えるために
' core.worktree'設定?あなたのサブプロジェクトがそれ以上ネストされていなければ、単に 'cdサブプロジェクト; git = $(git rev-parse --git-dir); rm .git && mv "$ git" .git && git config --unset core.worktree'を実行します。 – jthill
提案していただきありがとうございます。私は、相対リンクはかなり共通でなければならないと思う - 本当の例であなたのレシピを試してみるhttps://github.com/MacPython/cython-wheels、サブプロジェクト 'Cython'は私に壊れたサブモジュール' Could not chdir to .. '../ .. /../ Cython'。 –
Hunh。 'git --work-tree =。 config --unset core.worktree'を修正しました。 – jthill