我正在阅读AOSP的docs并发现描述repo start
和git branch
的区别,我对它们之间的差异感到困惑。
有人可以帮我解释一下吗?感谢。
答案 0 :(得分:1)
我们来看看repo start BRANCH_NAME PROJECT_NAME
。
我想你知道repo
使用的清单。它有数百行像这样:
<project name="ard_5.1/android_packages_apps_Browser" path="packages/apps/Browser"/>
ard_5.1/android_packages_apps_Browser
是PROJECT_NAME
,packages/apps/Browser
是代码根目录的相对路径。
repo start feature_003 ard_5.1/android_packages_apps_Browser
之后的 repo sync
几乎相当于:
cd packages/apps/Browser
git branch feature_003
#or
git branch feature_003 HEAD
它会从存储库feature_003
中的HEAD
创建一个新分支packages/apps/Browser
。
repo start feature_003 project1 project2
在project1
和project2
中创建了一个新分支。
repo start feature_003 --all
在所有存储库中创建一个新分支。它与repo forall -c 'git branch feature_003'
相似。
现在让我们看一下git branch
。它比repo start
复杂得多。您可以运行git branch --help
了解详情。
git branch
列出了所有本地分支。
git branch new_branch commit-ish
从修订版new_branch
创建commit-ish
。