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时用,

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

相关推荐
茯苓gao9 小时前
嵌入式开发笔记:QSerialPort 完整使用指南——从基础 API 到工程实战
笔记·嵌入式硬件·qt·学习
疯狂打码的少年12 小时前
【面向对象】面向对象概述:从“按步骤做”到“找谁来做”
笔记
今夜有雨.12 小时前
C++JSON 解析器
c++·笔记·后端·学习·json
xian_wwq12 小时前
【学习笔记】框架层坍缩——LangChain 们正在被重新定义-14/15
笔记·学习·langchain
大白菜和MySQL13 小时前
elk部署和kibana图形化展示
java·笔记·elasticsearch
pluviophile_s13 小时前
数据结构:第6讲:树与二叉树
数据结构·笔记
爱莉希雅&&&14 小时前
Rocky Linux 10.1 + K8s 1.36.3 离线集群部署笔记(Kubernetes)
linux·笔记·docker·kubernetes·calico
星恒随风14 小时前
C++ 多态底层原理:静态绑定、动态绑定、虚函数表与工程实践
开发语言·c++·笔记·学习
go不是csgo14 小时前
从模板到五道 LeetCode:完全背包的 Golang 教学笔记
笔记·leetcode·golang
一只小菜鸡..1 天前
南京大学 操作系统 (JYY) 学习笔记:进程、系统调用与状态机管理
笔记·学习