git
git是分布式仓库
创建版本库
mkdir repo //创建repo目录
cd repo //进入repo
pwd //显示当前目录
git init //初始化仓库
git add . //添加所有文件进入仓库(命令实际上就是把要提交的所有修改放到暂存区Stage)
git status //提交前查看状态
git commit -m “”//提交并加注释(把暂存区的所有修改提交到分支)时光机穿梭
git log //查看历史修改记录
git log –pretty=oneline//添加参数可以简洁的查看git修改记录
git reset –hard head^ //回到上个版本
git reset –hard 3fee3fe4aba //再回到原版本 id号必须在命令号上找到
git reflog //查看命令历史
git checkout – file //直接丢弃工作区的修改
git reset HEAD file git checkout – file//修改错误放到了暂存区Git是如何跟踪修改的,每次修改,如果不add到暂存区,那就不会加入到commit中。
rm //删除文件 git checkout – test.txt//一键还原
github如果已经存在一个非空仓库,本地也存在一个非空仓库,需要提交本地到github需要合并
本地仓库和github仓库:git pull –rebase origin master 然后再提交:git push -u origin master
- 分支
git branch dev //创建分支
git checkout dev //切换分支
git checkout -b dev //创建并切换
git branch //查看分支
git merge dev //合并dev到master
git branch -d //删除分支
(1). 当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
用git log –graph命令可以看到分支合并图。
(2). 修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash隐藏一下,然后新建bug分支去修复bug,修复后,再git stash pop,回到工作现场。