git时常混淆的操作的笔记

git时常混淆的操作的笔记

  • 写在前面
  • [git rebase与merge的不同](#git rebase与merge的不同)
  • [git am 与git apply的不同](#git am 与git apply的不同)
  • 删除远端分支

写在前面

离开OS公司后,git的使用不再那么频繁。许多指令,时常忘记,这里作一点笔记。

git rebase与merge的不同

首先,这二者的含义不同。这个大家都清楚。我也不是会忘它们的意思。

含义是reabase是以commit为单位,进行路径的归并;而merge则是代码级的合并,是合并,不是归并。这方面,我们一般不是会出太大的困难。

但是,重点在下面,时常混淆:

rebase [current branch] to target_branch

merge [current branch ] from target-branch

我不清楚是英语与汉语对动语的理解的不同,这里相当不友好。

我不觉得是两种语言的不同导致,可能是这个指令设计得就是不友好。

所以,这个有必要写在这里。

当然,如果你能记住,永远都不要把option的前项,忘记,也是好的习惯。

git rebase当然有许多高级用法,这里我们不作介绍。那些不是背访笔记需要写的。

git am 与git apply的不同

这两个指令,一旦想起来,当然是很清楚。

但我们用的时候,时常忘记了。

git am是指a+m

git apply只是指apply,即只有a

比如,不小心,我们制作patch时,引入的空格,要重做这个patch,

那么就要:

git apply --reject --whitespace=fix some.patch

然后重新commit,重新制作。

同样,有多个patch,要叠加在一起时,也需要用到这个指令。

除此以外,我们绝大多数时间,应当用am

删除远端分支

git push origin --delete feature/yourname/ISSUE/master

这个操作很危险。我们要做的,实际上是想办法不用这个指令。

现在我还没想到如何完全不使用的办法。

我的想法是,你可以留两上自己的分支,一个用于开发,一个用于rebase时用,

这样就能避免使用这个指令。

相关推荐
Upsy-Daisy9 小时前
AI Agent 项目学习笔记(二):Spring AI 与 ChatClient 主链路解析
人工智能·笔记·学习
杨浦老苏11 小时前
AI原生笔记应用Tolaria
笔记·ai·markdown·obsidian
中屹指纹浏览器11 小时前
浏览器网络栈隔离技术研究:TCP/IP底层指纹生成与规避原理
经验分享·笔记
sulikey12 小时前
个人Linux操作系统学习笔记2 - gcc与库的理解
linux·笔记·学习·操作系统·gcc·
愚昧之山绝望之谷开悟之坡13 小时前
什么是Linter?什么是沙箱!
linux·笔记
菜鸡儿齐13 小时前
编程范式学习笔记
笔记·学习
悟空瞎说14 小时前
# Git 交互式变基:优雅整理提交历史,告别杂乱 PR 记录
前端·git
身如柳絮随风扬14 小时前
Git 核心操作:rebase 与 merge 的区别,以及分支管理最佳实践
大数据·git
cccyi714 小时前
Git本地和远程邮箱一致,上传也有贡献显示,但是没有绿点或绿点延迟显示
git
可依软件crf28614 小时前
推荐一款特别的笔记软件:星轨笔记。普通用户免费功能也基本够用了,我已经免费使用几个月了。
笔记