新增文件如何打 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 的信息:

  1. 执行 git rebase -i ghi9101(修改的提交是 ghi9101 的子提交)。
  2. 编辑器打开后,将以下内容:
    pick def5678 添加了新功能
    改为:
    reword def5678 添加了新功能
    保存退出,系统会提示你修改 def5678 的信息。
    修改后保存,完成操作。
posted @ 2024-12-12 00:26  爱新觉罗LQ  阅读(23)  评论(0编辑  收藏  举报