使用 git 篡改历史

栏目: 编程工具 · 发布时间: 4年前

内容简介::star:️ 更多前端技术和知识点,搜索订阅号有时候我们需要修改 git 历史提交的文件内容,如果只是在前一个 commit,那么只需要修改文件并执行

使用 git 篡改历史

使用 git 篡改历史

:star:️ 更多前端技术和知识点,搜索订阅号 JS 菌 订阅

有时候我们需要修改 git 历史提交的文件内容,如果只是在前一个 commit,那么只需要修改文件并执行 --amend 即可:

如修改上一次提交的文件:

// do something
git add .
git commit --amend --no-edit

另外,可能还需要修改以往历史提交的文件,那么就需要使用到 rebase:

git log 查看一下以往的提交纪录:

commit 084dbd48be6fff86b0d3de23220cff8cabddd9c6 (HEAD -> master)
Author: oli <oli@olideMacBook-Pro.local>
Date:   Thu May 9 23:20:09 2019 +0800

    echart how to use

commit 3358a5fd3078d7fb6794d8c2d468054db300a46f
Author: oli <oli@olideMacBook-Pro.local>
Date:   Wed May 1 11:26:12 2019 +0800

    edit Readme.md

commit c0b7ac77431ceb270b5f0aa0f97b13a79afca4b9
Author: oli <oli@olideMacBook-Pro.local>
Date:   Wed May 1 02:25:40 2019 +0800

    init

假设我们需要修改第二条纪录中的项目的文件,那么之行命令:

git rebase 3358a5fd3078d7fb6794d8c2d468054db300a46f^ --interactive

将 pick

pick 3358a5f edit Readme.md
pick 084dbd4 echart how to use

改为 edit

edit 3358a5f edit Readme.md
pick 084dbd4 echart how to use

然后保存

Stopped at 3358a5f...  edit Readme.md
You can amend the commit now, with

  git commit --amend 

Once you are satisfied with your changes, run

  git rebase --continue

按照提示,修改文件然后使用 git commit --amend 提交,并调用 git rebase --continue 即可:

diff --git a/README.md b/README.md
index 73ae153..98b8201 100644
--- a/README.md
+++ b/README.md
@@ -1,29 +1 @@
-# vuebox
-
-## Project setup
-```
-yarn install
# ...
+Read the guide and start building things in no time!

修改文件后提交:

git add . && git commit --amend --no-edit

> running pre-commit hook: lint-staged
No staged files match any of provided globs.
[detached HEAD 4436ffc] edit Readme.md
 Author: oli <oli@olideMacBook-Pro.local>
 Date: Wed May 1 11:26:12 2019 +0800
 11 files changed, 177 insertions(+), 131 deletions(-)
# ...

最后调用 git rebase --continue

Successfully rebased and updated refs/heads/master.

搞定~

使用 git 篡改历史

请关注我的订阅号,不定期推送有关 JS 的技术文章,只谈技术不谈八卦 :blush:


以上所述就是小编给大家介绍的《使用 git 篡改历史》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The  C Programming Language

The C Programming Language

Brian W. Kernighan、Dennis M. Ritchie / Prentice Hall / 1988-4-1 / USD 67.00

Presents a complete guide to ANSI standard C language programming. Written by the developers of C, this new version helps readers keep up with the finalized ANSI standard for C while showing how to ta......一起来看看 《The C Programming Language》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具