一 创建分支:git checkout -b 分支名 或是git branch 分支名
- 创建分支之前需要先提交一次文件到版本库,不然就创建不成功
- 分支:
- Master 主分支
- 新建一个分支开发新功能:新建一个分支的命令:git branch zhangsan
- 如果新建的分支里面有commit文件,如过切换到master 里面是没有分支的文件的
- 查看所有的分支命令:git branch
- 切换分支命令:git checkout 分支名
- 快速切换并新建一个分支:git checkout -b 分支名
- 在A分支下新建的分支,该新建的分支具有A的代码 可以别继承(在父里面创分支 子可以继承父里面的代码)
二 删除分支:git branch -d
- git branch -d 分支名 推荐使用git branch -d 防止强制删除丢失代码
- lisi分支下 自己是不可以使用git branch -d删除自己的,
但是可以在zhangsan分支下删除lisi,因为lisi分支是在zhangsan 分支下创建的。 主分支master下可以任意删分支 这个时候如果一定要删除,可以使用强制删除命令: 分支自己是不可以删除自己的,强制删除也不行
- git branch -D 分支名 不推荐
三 分支的合并:git merge 分支名
- 分支之间可以互相合并:
- merge之后无需commit 是自动提交的, 则在主分支master里面就会显示之前新建分支的文件了
- 在master分支下想要合并zhangsan分支:git merge zhangsan
- 一个分支A提交了文件,
- 切换到另一个分支B的基础上,想删除A分支,会阻止删除,
- 提示需要把A分支的内容合并到B分支,
- 按照提示要求合并之后才可以-d删除
- 或者就是不合并 然后git branch -D 分支名 强制删除:
四 命令异常 无法输入操作
- 出现冲突无法继续操作 输入以下命令可以强制退出: :q 回车
五 把暂存区的代码隐藏和取出:git stash
- 产品经理让你开发一个功能,开发到一半说不用开发了
- 你把当前开发的代码 先提交到暂存区
- 然后使用 git stash 把暂存区的代码文件隐藏起来
- 突然有一天产品经理说 你之前开发的那个功能又要用了
- 你可以使用git stash pop 把之前隐藏在暂存区的内容拿出来
- 这时候文件会出现在工作区
- 隐藏之前要在版本库存在一个记录
- git stash 把暂存区的内容隐藏
- git stash pop 把暂存区隐藏的内容拿出来