git merge 排除指定文件_Git 进阶操作整理

本文介绍了Git的进阶使用,包括如何修改和合并commit,回滚操作,以及如何使用.gitignore。重点讨论了git merge时如何排除指定文件,并强调在团队合作中避免使用可能导致历史commit变化的操作。此外,还探讨了Git中的对象类型(commit、tree、blob)及.git目录结构。
摘要由CSDN通过智能技术生成

5648923e2d5c05db407b790526852bd5.png

951e8517556cbf359f0aa3f427c915ad.png

1. Git 进阶使用

1.1. 版本历史更改

1.1.1. 最近一次 commit 的 message 修改

使用如下命令就可以对最近一次 commit 的 message 进行变更了

git commit --amend 

1.1.2. 老旧 commit 的 message 修改 --- rebase + reword

输入如下命令

git rebase -i hash_value # hash_value,是需要的 commit 的父亲 commit 的 hash_value

之后会发生一系列交互

f579a53560c11411b5071d2f3d17f753.png

比如你想修改的是 9885fd5 这个 commit 对应的message,那么将 pick 改为 reword 或者 r(看下面的注释信息),然后保存退出。之后就跳到了修改 message 的文档了,在这里输入改变之后的 message 保存退出即可。

b9e0a02f6124eefb09bac59a7e5656f1.png
注意:这种方式修改之后会导致该 commit 及后面 commit 的 hash_value 都被改变掉,所以不适合团队集成开发中使用。

1.1.3. 把连续的多个 commit 合并成一个 --- rebase + squash

输入如下命令,

git rebase -i hash_value # hash_value 是要合并的 commit 的父亲 commit

输入之后会发生一系列的交互,如下所示,

fbb04ef0745f8f357207362e2675f00b.png

假如我想要把上面两个 commit 合并成一个,需要使用 squash ,版本历史中较早的 commit 在上面,较晚的 commit 在下面,进行合并的话,是把较早的保留,较晚的合并到较早中去,所以要将上述两个 commit 进行合并的话,修改为如下所示,并保存退出

3a1a4573a4b304d39146d109c688802a.png

之后会进入另一个交互,在下面填写更改之后的 message 信息,保存退出之后即可。

a40fd3b4b0e2b358bbafecfb3916bf45.png

1.1.4. 把间隔的几个 commit 合并成一个 --- rebase + squash

与上述类似,就是把间隔的 commit 移到一块即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值