git已逐渐成为团队开发首选的代码管理工具,而有些命令你知道它的作用,却不太理解它会用到哪些地方,那就和我一起看下去吧
一.工作区修改撤回:
git checkout -- 修改文件
二. 已经add . 到暂存区,发现一个错误,怎么撤回:
git reset HEAD 文件名
git checkout -- 修改文件
三. 已经提交commit,修改了版本库信息,那就只能版本回退到上一级了
git reset --hard HEAD^ (一个 ^ 表示上一级)
四. 创建与合并分支
当你新增或修改一个功能模块,为了不与主分支的代码混合(因为这个功能不是一时半会就能完成的),这是你就要创建一个新的分支来暂时放你这个新模块,以免别人下载你未完成的模块
1. 创建新分支:
git checkout -b dev(分支名)
2. 切换分支:
git branch dev
3. 把新模块的代码提交,上传:
git add .
git commit -m '说明'
必须提交上传才能显示你此分支的代码,要不它就会一直在工作区,若这时你切换分支,会发现也能看到你新写的内容,是不是有一丝丝疑惑,我新分支的内容别人都能看到吗(小朋友,你是否有很多问号)
4. 完成整个模块后,切换到master,合并dev:
git checkout master
git merge dev
5. 这时dev分支就没用了,可以删除:
git branch -d dev
6. 合并分支的时候,也可能发生冲突,毕竟bug是程序员的亲密伙伴
例:主分支master发生了改变,但你此时正在dev分支疯狂的开发你的新代码,毫不知情或你修改过后忘了,这时若合并dev分支,就会发生冲突了
git status 查看冲突详情
7. 打开冲突文件,对比会有特殊符号。把master的新增修改备份一下,再把dev中最早代码覆盖master,恢复到以前版本,再次合并,冲突就解决了(这只适合单人开发)
8. 再次合并提交,查看合并记录:
git log