Git常用操作
Git常用操作
1.未push到远端的需要撤销本地commit
a.先reset head
这个操作可以回滚你最近一次的提交;
Reset Type 有三种:
Mixed 默认方式,只保留源码,回退 commit 和 index 信息
Soft 回退到某个版本,只回退了 commit 的信息,之前写的代码还是保留的,不会
恢复到 index file 一级。如果还要提交,直接 commit
Hard 彻底回退,本地源码也会变成上一个版本内容,不保留之前 commit 的代码
To Commit 是回滚到哪个版本,例如,HEAD 为当前版本,HEAD^ 为上一个版本;
使用 git reset 回滚一般使用默认的 mixed 或者粗暴的 hard 方式;
注意:或者删除本地分支,那么之前代码都没有了
2.已经push到远端需要撤销刚刚的push
a. 选择到需要回退的分支,然后点 reset current branch to here 选择hard模式
--hard
删除工作空间的改动代码,撤销commit且撤销add
这个操作可以使本地分支回滚到当前圈住的commit,之前红框之前的操作(包含
commit,merge)都会被回滚
b.进入项目的工作空间,使用命令将当前项目push到远端
git push --force origin 分支名
3.合并代码
1.如果是A分支的代码要合到B分支
a.先从B分支拉出一个新分支C,然后将A新增的部分功能cherry pick到C
b.如果有多次提交,那么 需要从功能的初次提交一直cherry pick到功能的结束;
中间如果有吃冲突,那么解决冲突。
c.功能合并完成,需要将C分支的代码再合并到B,此时先将B分支的代码merge
into current C(B合到C),再将C merge into current B(C合到B);
4.cherry pick 与merge into区别:
cherry pick:只是将选中的那次提交中的文件(类)带过来
merge into:(常用于基于同一分支的操作):
比如主分支是dev,最新版本是01。然后小明基于此,搞了个feature 分支A
然后在上面多次提交,完成功能迭代开发,如A1 ---> A2 ---> A3
之后 merge A branch into dev,最后 dev 分支的历史log就变成: Dev01 ---> A1 ---> A2 ---> A3
5.stash作用:
一般A分支正在写代码,需要去B分支解决问题,但此时A切到B会把新代码带过
去,所以先将A分支的代码暂存起来,可以创建一个stash,等B分支的问题解决,
我们再回到A分支unstash一下,再把之前新写的代码还原了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!