git 部分实用命令


前言

本文用于记录在日常使用git过程中实用的命令,并说明了每条命令的功能和使用方法。
如果有错误或不足之处,还望各位读者小伙伴们指出。


1. git add -p (交互式暂存)

功能:使用该命令,可以选择性的将文件或文件的一部分修改添加到暂存区(在处理复杂更改时很有效)。
使用方法
使用git add -p命令,然后逐块选择要暂存的更改
执行该命令后,git会逐块显示文件的更改,用户可以选择是否暂存某一块内容,常用选项为:

y 	#暂存当前块
n 	#跳过当前块
s 	#拆分当前块
e 	#手动编辑当前块(对当前块中的内容进行修改,要记得保存修改的内容)
q	#退出暂存

2. git stash (临时保存工作区内容)

功能:临时保存当前工作目录的更改,以便切换到其他分支或者处理其他任务。
使用方法

git stash 				#保存当前工作目录的更改
git stash list 			#查看存储进度
git stash apply 		#应用最近一次存储的进度(不删除)
git stash apply <num>	#应用指定某次的存储进度(不删除)(其中,num为git stash list查看时的序列号)
git stash pop			#应用并删除最近一次存储的进度
git stash drop <num>	#删除指定某次的存储进度(其中,num为git stash list查看时的序列号)
git stash clear 		#清空所有存储

3. git rebase (变基)

功能:将一个分支上的更改应用到另一个分支上。可以帮助保持提交历史的线性,减少合并时的冲突。
使用方法

git rebase <branch_name> 	#变基当前分支到指定分支
git rebase main 			#例如:将当前分支变基到main分支

git add <file>
git rebase --continue 		#如果提交过程中产生冲突,需要手动解决冲突,并保存冲突

git rebase --skip			#如果某个提交导致的冲突不想解决,可以跳过该提交
git rebase --abort 			#如果在变基过程中出现问题,可以终止变基并恢复到变基前的状态
git rebase --onto <目标branch> <起始提交> <当前分支> #指定从某个提交之后开始变基
#例如,将feature-branch从提交abc123开始的提交,变基到main分支
git rebase --onto main abc123 feature-branch

4. git rebase -i (交互式变基)

功能:可以在变基过程中编辑、删除或合并请求
使用方法
使用git rebase -i <commit_id>常用选项为

pick 	#保留提交
reword 	#修改提交信息
edit 	#编辑提交
squash 	#将当前提交与前一个提交合并
fixup 	#将当前提交与前一个提交合并(不保留提交信息)
drop 	#删除提交

4. git cherry-pick (拣选提交)

功能:可以选择特定的提交并应用到当前分支,而不是合并整个分支(在需要从一个分支移植特定更改到另一个分支时非常有效)。
使用方法

git cherry-pick <commit_id> 				#将commit_id提交应用到当前分支
git cherry-pick <commit_id1> <commit_id2> 	#将多个commit提交commit_id1,commit_id2应用到当前分支
git cherry-pick <commit_id1>^..<commit_id3> #将一段连续的提交从commit_id1到commit_id3的所有提交应用到当前分支

git add <file>
git cherry-pick --continue 					#手动解决cherry pick过程中的冲突,解决后需要标记冲突已解决

git cherry-pick --abort 					#取消cherry pick
git cherry-pick --skip 						#跳过当前提交(如果某个提交无法应用,可以跳过它)

注意:
cherry pick会创建一个新提交,即使内容相同,提交的哈希值也是不同的;
如果提交之间有依赖关系,需要按顺序cherry;
pick多个提交 频繁使用cherry pick可能导致提交历史混乱,建议在必要的时候使用。


总结

以上就是今天要讲的内容,本文介绍了git过程中部分实用的命令。本文作者目前也是正在学习git相关的知识,如果文章中的内容有错误或者不严谨的部分,欢迎大家在评论区指出,也欢迎大家在评论区提问、交流。
最后,如果本篇文章对你有所启发的话,希望可以多多支持作者,谢谢大家!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

codeJinger

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值