gerrit的“格式补丁”和“签出”选项有什么区别? 基本上,我希望对提交到本地目录的所有更改都没有在本地存储库中进行新提交。
答案 0 :(得分:1)
首先致电git fetch <url> refs/changes/xx/xxx/xx
,以获取更改的历史记录。
Format Patch
然后调用git format-patch -1 --stdout FETCH_HEAD
。它生成对stdout所做更改的当前补丁集的补丁。您可以将其重定向到本地文件或删除--stdout
,以便创建名为0001-xxxx.patch
的补丁。
Checkout
然后调用git checkout FETCH_HEAD
。它将本地代码切换到更改的当前补丁集的修订版,并导致分离的HEAD状态。
如果要向本地分支引入提交更改,则可以粘贴Cherry Pick
命令并附加选项-n
然后运行它。另一种方法是先运行Format Patch
而不使用--stdout
的命令,然后再运行git apply 0001*.patch
。