某些更改需要同时修改多个代码库。有两个 实现这一点的受支持方法:软过渡和硬过渡。
一般来说,首选软过渡而不是硬过渡(请参阅 跨多个花瓣进行更改 )。这意味着,如果某个仓库的更改依赖于另一个仓库中的更改, 必须等到相应提交已滚动后,才能依赖提交 可以提交至队列。
多花瓣的大部分变化(包括 FIDL 协议更新) 尝试采用柔和的过渡方式 多个花瓣的变化 可能需要硬转换。通常,应采用上述方法 以尽可能避免硬转换。
使用 Jiri 上传
如需同时上传更改,您需要在所有代码库中创建一个名称相同的分支。
请执行以下操作:
在 Fuchsia 代码库中进行并提交第一项更改:
转到代码库:
cd examples/fortune
创建新分支;例如 add_my_new_feature:
git checkout -b add_my_new_feature
修改并添加与地图项相关的文件:
git add <my_feature_related_files>
提交您的第一项更改:
git commit
在另一个 Fuchsia 代码库中进行第二项更改并提交:
转到第二个代码库:
cd fuchsia/build
创建一个同名的新分支,即 add_my_new_feature:
git checkout -b add_my_new_feature
修改并添加与地图项相关的文件:
git add <more_of_my_feature_related_files>
提交您的第二项更改:
git commit
使用
-multipart
上传多个代码库中具有相同分支名称的所有更改:jiri upload -multipart
提交更改后,清理本地分支:
cd examples/fortune
git branch -d add_my_new_feature
且
cd fuchsia/build
git branch -d add_my_new_feature
使用 Git 命令
您还可以使用 git
命令跨代码库上传所有更改。
这些步骤与使用 jiri 的步骤相同
上传;但是,请在第 3 步中使用 jiri upload -multipart
,而不是
以下 git
命令,上传您修改的每个代码库中的更改:
git push origin HEAD:refs/for/main
请注意,此命令必须从每个代码库的工作目录运行。