新增文件如何打 Patch
新增文件如何打 Patch
one:注册监听
two:写回调函数
three:由框架决定调用时机
1. 先 add 后打 patch
2. 撤销 git add 操作【即将文件从暂存区中移除,以恢复到未暂存的状态】
方法1 git reset
git reset <file>
它的作用与 git restore --staged 类似,也将文件从暂存区中移除。
示例:
git add file.txt
git reset file.txt
方法2 git restore --staged
从 Git 2.23 开始,可以使用 git restore --staged 命令:
git restore --staged <file>
这会将指定文件从暂存区中移除,但不会改变工作区的内容。
示例:
git add file.txt
git restore --staged file.txt
方法3:撤销所有已暂存的文件
如果你想撤销所有文件的 git add 操作:
git restore --staged .
或使用 git reset:
git reset
3. 【本地】回退代码到某次 commit
需要回滚提交的代码的场景
- 提交代码到错误Git分支
- 提交的代码不需要上线了,而同一分支有需要上线的代码;
- 提交了不需要提交的代码
git reset --hard HEAD^ 回退到上个版本。
git reset --hard HEAD~n 回退到前n次提交之前,若n=3,则可以回退到3次提交之前。
git reset --hard commit_sha 回滚到指定commit的sha码,推荐使用这种方式。
4. 【库上】revert 代码
通过 git revert,你可以轻松地撤销更改,同时保持提交历史的完整性。
git revert 是一个 Git 命令,用于撤销已提交的更改,但不会修改提交历史。它通过生成一个新的提交来反转指定提交的更改,从而保留历史记录的完整性。
基本用法
1. 撤销一个提交
git revert <commit>
git revert v4
鼠标双击后,再按下 (shift + insert) 后,就可以复制到这里了
2. 撤销多个连续提交
git revert <commit1>【不包含】..<commit2>
3. 反转多个提交并将它们合并成一个新提交。
git revert --no-commit <commit1> <commit2>
git commit -m "Revert multiple commits"
4. 冲突处理
如果反转提交与当前代码冲突,Git 会提示解决冲突。
解决冲突后需要手动执行 git revert --continue。
5 修改某次提交信息
abc1234 修复了某个问题
def5678 添加了新功能
ghi9101 初始提交
假设需要修改 def5678 的信息:
- 执行 git rebase -i ghi9101(修改的提交是 ghi9101 的子提交)。
- 编辑器打开后,将以下内容:
pick def5678 添加了新功能
改为:
reword def5678 添加了新功能
保存退出,系统会提示你修改 def5678 的信息。
修改后保存,完成操作。