git相关操作

发布时间:2026/5/23 16:42:53

git相关操作 1.git如果当前提交生成的链接没有合入但是要进行修改如何处理要将新的修改同步到当前 Gerrit 上已有的待合入提交中即生成该提交的新版本 Patch Set您需要使用 Git 的 --amend追加/修改功能。请按照以下步骤操作第一步确保本地处于该提交的代码状态如果您本地的当前分支和提交正是这个修改可以直接进行第二步。如果本地代码已经变动建议先将该 Gerrit 提交的代码拉取到本地1. 在 Gerrit 网页上点击该提交进入详情页。2. 点击右上角或右上侧面的 Download 按钮。3. 复制 Checkout 或 Cherry Pick 下方的命令在本地终端执行使本地代码回退到该提交的状态。第二步修改代码并暂存在本地修改好代码后将修改的文件添加到暂存区git add 修改的文件路径# 或者添加所有修改的文件git add .第三步使用 --amend 修改提交(PS:这步需要注意如果在网页中修改了编辑内容这里会把原先的编辑内容覆盖所以建议将网页的编辑内容拷贝下来)执行以下命令这会将您刚刚的修改合并到上一次的提交中而不会生成新的 commit 记录git commit --amend- 注意执行此命令后会弹出文本编辑器如 Vim让您编辑提交信息。请千万不要删除或修改最底部的 Change-Id: Ixxxxxxxx...这一行。Gerrit 正是通过这个 Change-Id 来识别并关联到同一个待合入页面的。- 保存并退出编辑器。此处Vim的命令处理流程1.输入i进入编辑模式2.按Esc退出编辑模式3.:wq保存当前修改的内容退出Vim第四步推送修改到 Gerrit将修改后的 commit 推送至对应的目标分支根据您的截图分支为 3in1_xgd_0307git push origin HEAD:refs/for/3in1_xgd_0307(注如果您的远程仓库名称不是 origin请替换为对应的名称。)验证结果推送成功后刷新 Gerrit 网页。您会发现该提交页面中生成了一个新的 Patch Set例如从 Patch Set 1 变为 PatchSet 2这说明您的修改已成功同步到该待合入状态的提交中。2.git如何查看git commit之后的diffgit diff HEAD~1 HEAD3.git如何查看git add之后的diffgit diff --staged4.git如何清理没有连接进来的内容git clean -dfx5.如何在指定目录下面合入patch以及生成patch首先切换到对应的目录合入patch比较简单就是git apply这没什么好说的如果我们合入了patch发现不对然后上述第一步以及将patch合入了然后我们就可以进行修改修改完成我们需要生成patch此时我们还需要保持原先的目录然后执行如下指令git diff --relative 0004_wpa_supplicant_wapi_sprd.patch这样我们就生成新的patch了将生成的patch与之前的patch进行对比目录结构一致即可行数有所改变甚至之前的行数有所改变都是正常的说明之前的patch行数不正确我们生成的patch更稳定如下

相关新闻