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

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

相关推荐
童话名剑8 小时前
序列模型与集束搜索(吴恩达深度学习笔记)
人工智能·笔记·深度学习·机器翻译·seq2seq·集束搜索·编码-解码模型
鄭郑9 小时前
STM32学习笔记--I2C封装与OLED(2026.2.1)
笔记·stm32·学习
酒鼎10 小时前
学习笔记(4)HTML5新特性(第3章)- WebSocket
笔记·学习·html5
-Springer-11 小时前
STM32 学习 —— 个人学习笔记2-2(新建工程)
笔记·stm32·学习
tb_first11 小时前
万字超详细苍穹外卖学习笔记4
java·spring boot·笔记·学习·spring·mybatis
日更嵌入式的打工仔11 小时前
C内存布局
笔记
卡布叻_星星11 小时前
达梦数据库笔记之使用教程以及不推荐迁移选择小写
笔记
山岚的运维笔记11 小时前
SQL Server笔记 -- 第15章:INSERT INTO
java·数据库·笔记·sql·microsoft·sqlserver
孞㐑¥11 小时前
算法—队列+宽搜(bfs)+堆
开发语言·c++·经验分享·笔记·算法
charlie11451419112 小时前
嵌入式C++教程——ETL(Embedded Template Library)
开发语言·c++·笔记·学习·嵌入式·etl