woo*_*dog 22 android repository android-source
我觉得我对git非常了解,但是当谈到repo命令时,我迷路了.我已经阅读了有关repo命令的内容,但我仍然不确定它是如何将所有内容联系在一起的.
我最大的问题是,我可以将目前的分支机构从姜饼改为ICS,还可能回来?
我看到命令:
repo init -u https://android.googlesource.com/platform/manifest
Run Code Online (Sandbox Code Playgroud)
根据我的理解,这将创建一个与主分支的回购.如果我想指定分支,我可以这样做:
repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
Run Code Online (Sandbox Code Playgroud)
我相信,下载大约是8GB,所以如果他们共享代码,我不想让我的回购消失.有没有办法在回购中切换分支?
repo -b参数指定应检出的.repo/manifests git存储库的分支.此存储库中的default.xml文件定义了其他每个git repositiories(项目)应该在哪个分支上.
似乎repo是以这样的方式编写的:如果你检查另一个清单分支再次进行repo sync,它将通过网络再次提取所有代码.
您可以运行repo forall -c 'git checkout branch_name',这将签出指定的分支对于在当前的清单中声明,但如果有添加/项目姜饼和ICS(其中有)之间移除,那么您将无法获得这些项目的代码的所有项目.
在.repo/manifests存储库中运行git checkout branchname然后运行repo sync可以节省一些网络开销.
否则,由于repo的限制,唯一真正的方法是维护aosp的两个工作副本或准备重新同步.