[英]How do I force git to always use the master branch?
我有一些Xcode项目我试图使用git从GitHub克隆,它也有外部子模块。 每当我尝试克隆时,它会继续将这些外部子模块以及项目中的每个文件夹放在“(无分支)”而不是主文件上。 这就是我在终端做的事情:
git clone git@github.com:******.git
cd ******
git submodule update --init
cd External/******
git submodule update --init
cd External/******
git submodule update --init
如果我进入任何文件夹并执行git分支,我得到这个:
git branch
* (no branch)
master
有没有办法可以强制git clone在任何地方使用master分支?
这需要git 1.8.2或更高版本(2013年3月)
这取决于.gitmodules
如何声明这些子模块:
参见“ git submodule tracking latest ”
这将允许您遵循主分支。
使用以下命令更新当前的.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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.