git

96 阅读2分钟

一 创建分支:git checkout -b 分支名 或是git branch 分支名

  • 创建分支之前需要先提交一次文件到版本库,不然就创建不成功
  • 分支:
  • Master 主分支
  • 新建一个分支开发新功能:新建一个分支的命令:git branch zhangsan
  • 如果新建的分支里面有commit文件,如过切换到master 里面是没有分支的文件的

image.png

  • 查看所有的分支命令:git branch

image.png

  • 切换分支命令:git checkout 分支名

image.png

  • 快速切换并新建一个分支:git checkout -b 分支名

image.png

  • 在A分支下新建的分支,该新建的分支具有A的代码 可以别继承(在父里面创分支 子可以继承父里面的代码)

二 删除分支:git branch -d

  • git branch -d 分支名 推荐使用git branch -d 防止强制删除丢失代码
  • lisi分支下 自己是不可以使用git branch -d删除自己的,

但是可以在zhangsan分支下删除lisi,因为lisi分支是在zhangsan 分支下创建的。 主分支master下可以任意删分支 这个时候如果一定要删除,可以使用强制删除命令: 分支自己是不可以删除自己的,强制删除也不行

  • git branch -D 分支名 不推荐

image.png

三 分支的合并:git merge 分支名

  • 分支之间可以互相合并:
  • merge之后无需commit 是自动提交的, 则在主分支master里面就会显示之前新建分支的文件了
  • 在master分支下想要合并zhangsan分支:git merge zhangsan

image.png

  • 一个分支A提交了文件,
  • 切换到另一个分支B的基础上,想删除A分支,会阻止删除,
  • 提示需要把A分支的内容合并到B分支,
  • 按照提示要求合并之后才可以-d删除 
  • 或者就是不合并 然后git branch -D 分支名 强制删除:

image.png

四 命令异常 无法输入操作

  • 出现冲突无法继续操作 输入以下命令可以强制退出: :q 回车

五 把暂存区的代码隐藏和取出:git stash

  • 产品经理让你开发一个功能,开发到一半说不用开发了
  • 你把当前开发的代码 先提交到暂存区
  • 然后使用 git stash 把暂存区的代码文件隐藏起来 
  • 突然有一天产品经理说 你之前开发的那个功能又要用了
  • 你可以使用git stash pop 把之前隐藏在暂存区的内容拿出来
  • 这时候文件会出现在工作区
  • 隐藏之前要在版本库存在一个记录
  • git stash 把暂存区的内容隐藏
  • git stash pop 把暂存区隐藏的内容拿出来

image.png

image.png

image.png