GIT修炼

GIT修炼

git 删除分支

  1. 切换到要操作的项目文件夹命令行: $ cd
  2. 查看项目的分支们(包括本地和远程) …
  3. 删除本地分支命令行: $ git branch -d
  4. 删除远程分支命令行: $ git push origin –delete

git分支重命名

1. 本地分支重命名(还没有推送到远程)

1
git branch -m oldName newName

2. 远程分支重命名 (已经推送远程-假设本地分支和远程对应分支名称相同)
a. 重命名远程分支对应的本地分支

1
git branch -m oldName newName

b. 删除远程分支

1
git push --delete origin oldName

c. 上传新命名的本地分支

1
git push origin newName

d.把修改后的本地分支与远程分支关联

1
git branch --set-upstream-to origin/newName

git回滚代码

只commit并未push的代码回滚

1
2
3
4
5
6
7
8
9
10
11
git reset --hard <版本号>

git reset --soft HEAD~1
撤销最近一次的commit(撤销commit,不撤销git add)

git reset --mixed HEAD~1
撤销最近一次的commit(撤销commit,撤销git add)

git reset --hard HEAD~1
撤销最近一次的commit(撤销commit,撤销git add,工作区的代码改动将丢失。操作完成后回到上一次commit状态)

如果已经push:

1
2
执行完上面的rest之后再继续
git push origin <分支名> --force // 需要有force权限

git 放弃本地修改

1
git checkout . && git clean -xdf

修改最后一次commits ,已经push过的

1
git commit --amend

git 撤回commit

写完代码后,我们一般这样

git add . //添加所有文件

git commit -m “本功能全部完成”

执行完commit后,想撤回commit,怎么办?

这样凉拌:

git reset –hard HEAD

这样就成功的撤销了你的commit

注意,仅仅是撤回commit操作,您写的代码仍然保留。

说一下个人理解:

HEAD^的意思是上一个版本,也可以写成HEAD~1

如果你进行了2次commit,想都撤回,可以使用HEAD~2

至于这几个参数:

  • –mixed

意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作

这个为默认参数,git reset –mixed HEAD^ 和 git reset HEAD^ 效果是一样的。

  • –soft

不删除工作空间改动代码,撤销commit,不撤销git add .

  • –hard

删除工作空间改动代码,撤销commit,撤销git add .

注意完成这个操作后,就恢复到了上一次的commit状态。

顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:

git commit –amend

此时会进入默认vim编辑器,修改注释完毕后保存就好了。

git 回退本地修改

Git checkout . && git clean -xdf

git reset -soft HEAD^

忽略本地所有,和远程分支保持一致
git reset –hard origin/dev/internal_ipv6

作者

Amazing Coder

发布于

2021-04-08

更新于

2021-05-08

许可协议

评论