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 来识别并关联到同一个待合入页面的。

  • 保存并退出编辑器。

第四步:推送修改到 Gerrit

将修改后的 commit 推送至对应的目标分支(根据您的截图,分支为 3in1_xgd_0307):

git push origin HEAD:refs/for/3in1_xgd_0307

(注:如果您的远程仓库名称不是 origin,请替换为对应的名称。)

验证结果

推送成功后,刷新 Gerrit 网页。您会发现该提交页面中生成了一个新的 Patch Set(例如从 Patch Set 1 变为 Patch

Set 2),这说明您的修改已成功同步到该待合入状态的提交中。

2.git如何查看git commit之后的diff

git diff HEAD~1 HEAD

3.git如何查看git add之后的diff

git diff --staged

4.git如何清理没有连接进来的内容

git clean -dfx

5.如何在指定目录下面合入patch以及生成patch

首先切换到对应的目录,合入patch比较简单,就是git apply,这没什么好说的

如果我们合入了patch发现不对,然后上述第一步以及将patch合入了,然后我们就可以进行修改

修改完成我们需要生成patch,此时我们还需要保持原先的目录,然后执行如下指令

git diff --relative > 0004_wpa_supplicant_wapi_sprd.patch

这样我们就生成新的patch了

将生成的patch与之前的patch进行对比,目录结构一致即可,行数有所改变甚至之前的行数有所改变都是正常的,说明之前的patch行数不正确,我们生成的patch更稳定,如下

相关推荐
亿道电子Emdoor22 分钟前
【Perforce】Klocwork-kwgcheck图形化界面无法打开如何解决
git·python·github
小此方1 天前
「插曲:Git」企业规范篇:DevOps开发模型、Git Flow五类分支设计与测试/预发布/生产环境Bug修复及Hotfix紧急发布流程
git·bug·devops
溪语流沙1 天前
【Web全栈进阶】JWT无状态认证:签发、校验、刷新
前端·git·python·github
OsDepK1 天前
osgit纯图形化git版本管理工具,多人开发团队协作工具,支持Mac与Windows
git
Madison-No71 天前
Git版本控制工具(一)
git
小小小米粒2 天前
重置本地git
大数据·git·elasticsearch
鶴哥只手遮天2 天前
第 8 章 工作区与检出:unpack-trees 与并行 checkout
git
xing-xing2 天前
git 相关命令总结
git
A-刘晨阳2 天前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
ControlRookie2 天前
SyncBridge:一个 CODESYS 工程与 AI 之间工程师级的同步工具
git·ai编程·codesys·工业软件·controlrookie