Git常用操作

Git常用操作

1.未push到远端的需要撤销本地commit

a.先reset head

Git常用操作

Git常用操作

这个操作可以回滚你最近一次的提交;

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

Git常用操作

这个操作可以使本地分支回滚到当前圈住的commit,之前红框之前的操作(包含

commit,merge)都会被回滚

b.进入项目的工作空间,使用命令将当前项目push到远端

git push --force origin 分支名

Git常用操作

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一下,再把之前新写的代码还原了

Git常用操作

上一篇:IDEA 撤销本地commit的代码


下一篇:【kafka】kafka log 存储时间 小于 offset 存储时间 offset存在但是消费不到