GIT与restKit混淆

所以我正在学习如此缓慢地使用git来让我RestKit的最新更新,因为旧版本保留周期…够公平的但是,当我拉使用gitHub客户端它不给我的AFNetworking文件,我被告知使用该命令

git submodule update --init --recursive 

我这样做,问题是,我注意到,运行后,我跑

 git submodule status 

它把我从主分支拿回来,把头放回原来的东西。 因此回到泄漏和东西。

所以我想也许我可以使用cocoapods安装,或者也可以在restkit子模块内部放置一个子模块用于AFNetworking …所有的都没有工作,现在我已经遵循了这个指南。 我如何删除一个子模块? 直到最后一步,因为我不知道什么提交将做什么? 我希望它不承诺事实,我删除了restkit网站上的一切? 我很困惑,最初所有我想做的是切换当前分支子模块我有主人。

援助将不胜感激。

编辑:好,以回答什么提交,提交只会影响您的副本的存储库,并不会影响远程“主”存储库其他人从他们的代码,所以本质上我能够提交,然后运行从我想要的分支全新的子模块,但问题仍然存在是否有一种方法来切换分支你从你的数据使用更新时 – – recursion?

只需进入RestKit目录并键入:

 git pull origin master 

(如果你使用主分支当然)

另外,如果您需要更新所有子模块,只需转到项目的根目录,然后键入:

 git submodule foreach git pull 

git submodule update令人困惑,在这里它真的做了什么:

当您调用git子模块更新时,它会在父存储库中查找每个子模块的SHA,进入这些子模块并检出相应的SHA。 如果您在常规存储库中检出SHA,情况就会如此,这会将子模块置于分离的HEAD状态。

编辑

要简单地切换一个子模块的分支,比方说'开发',只需在子模块git checkout development ,然后你就可以做git pull origin development