3

gitを使用してGitHubからクローンしようとしているXcodeプロジェクトがいくつかあり、外部サブモジュールもあります。クローンを作成しようとすると、これらの外部サブモジュールとプロジェクト内のすべてのフォルダーが、マスターではなく「(ブランチなし)」に配置され続けます。これは私がターミナルでやっていることです:

git clone git@github.com:******.git
cd ******
git submodule update --init
cd External/******
git submodule update --init
cd External/******
git submodule update --init

任意のフォルダーに cd して git branch を実行すると、次のようになります。

git branch
* (no branch)
master

どこでもマスターブランチを使用するように git clone を強制する方法はありますか?

4

1 に答える 1

16

これにはgit 1.8.2以降が必要です (2013 年 3 月)

これらのサブモジュールが でどのように宣言されているかによって異なります.gitmodules

git submodule tracking latest」を参照してください

これにより、master ブランチをたどることができます。
あなたの現在を次のもので更新してください.gitmodules

git config -f .gitmodules submodule.<path>.branch master
git submodule update --remote --recursive

サブモジュールはまだどのブランチにもないことに注意してください。単純に、SHA1 はorigin/master.
あなたはまだcheckout masterそれらのそれぞれに対して必要です。

git submodule foreach --recursive git checkout master
于 2013-07-25T05:50:25.903 に答える