git 删除分支

git删除远程分支

git push origin --delete [branch_name]

删除本地分支区别

git branch -d 会在删除前检查merge状态(其与上游分支或者与head)。
git branch -D 是git branch --delete --force的简写,它会直接删除。

共同点
都是删除本地分支的方法(与删除远程分支命令相独立,要想本地和远程都删除,必须得运行两个命令)

git查看分支

查看本地分支 git branch
查看远程分支 git branch -r
查看本地和远程分支 git branch -a

git 切换分支

假设你当前在一个名为 master 的分支上:
git checkout -b wws

这里你可以看到创建了一个新分支 wws,它是在 master 分支上创建的。

在 Git 中切换到一个现有分支:
git checkout wws

将新分支推送到github

git push origin [branch name]

拉取特定分支到本地分支

git pull origin [branch name]

退出特定的提交(commit)

要退出或切换到特定的 commit:
git checkout,并输入 commit 的 SHA,而不是分支名称。

git取消合并(取消merge)

git merge --abort

git撤销

 - git reset --soft: 将分支回退到指定提交,工作区维持现状不变,暂存区会在现有基础上增加该commit之后的提交。
 - git reset --mixed: (默认操作)将分支回退到指定提交,暂存区也被同步为该指定提交,工作区保持不变。
 - git reset --hard: 将分支回退到指定分支,暂存区和工作区都会被同步为该指定的提交。
  • git reset后的三个参数回退程度是依次递进。soft最轻微,它不会重置当前工作区和暂存区,只会将回退版本后续的提交加到暂存区。
  • mixed会改变暂存区,使它和回退版本同步。
  • hard则会重置工作区和暂存区,使它和回退版本一致

处理合并冲突

首先要冷静,可以先看哪些文件冲突,是不是自己导致的

  • 若自己导致的,可以使用 git merge --abort取消合并
  • 如果自己提交的代码,发现有问题或者影响同事代码了,可以使用 git log 查看日志,然后回退版本 git reset --hard ID 比如: git reset --hard 3a169ff

git 取消本地修改

git checkout .   //当前分支的修改会重置 谨慎使用

git revert 的用法

git revert 的作用是通过创建一个新的版本,这个版本的内容与我们要回退到的目标版本一样,但是HEAD指针是指向这个新生成的版本,而不是目标版本。
如果我们想恢复之前的某一版本(该版本不是merge类型),但是又想保留该目标版本后面的版本,记录下这整个版本变动流程,就可以用这种方法。
我们使用git revert HEAD命令就可以创建一个新的版本,此版本与上一个版本相同。

git revert HEAD :撤销前一次 commit
git revert HEAD^ :撤销前前一次 commit
git revert commit + (commit id): 撤销指定的版本,撤销也会作为一次提交进行保存。
git reset --soft HEAD^:将最近一次提交节点的提交记录回退到暂存区
git reset --mixed HEAD^:将最近一次提交节点的提交记录回退到工作区
git reset --hard HEAD^:将最近一次提交节点的提交记录全部清除
git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit。

如何找到一个 commit 的 SHA

git log 命令查看日志

在 commit 一词之后的每次 commit 的第一行中,都有一长串字符和数字:94ab1fe28727…,这就是 SHA。SHA 是为每次 commit 生成的唯一标识符。
要退出特定的提交,你只需要将提交的 SHA 作为参数传递给 git checkout。
注意:通常,你只需要使用 SHA 的前几个字符,因为字符串的前四个或五个字符在整个项目中很可能是唯一的。

什么是分离头指针状态(detached HEAD state)

退出特定 commit 的结果进入“分离头指针状态”。
从这个位置,你有两个选择:

  • 试验一下,然后返回上一个分支,放弃更改
  • 从这里开始工作,然后从这一点开始新的分支

你可以使用 git switch - 命令撤消所做的任何更改并返回上一个分支。

如果你想保留所做的更改,并从此处继续,则可以使用 git switch -c <新分支名称> 从此处创建一个新分支。

你可能感兴趣的:(git,git)