版本切换 && git难点命令讲解
git log --oneline 显示当前分支上的所有提交历史(以短码显示每次提交的id号)
git log --oneline --graph(带分支图 -显示当前分支上的所有提交历史)
tig:查看所有的提交历史(不带id码,只显示提交的message)
git rebase 分支
如果有冲突会停下让你解决冲突(如果手动修改,需要修改成和两个分支下不一样的,即两边的都保留,如果修改成和某一样的,用下面的--continue的时候会出错(非明显,注意仔细看))
git add .
git rebase --continue(如果完成的话,结果是一句话"already ...continue");
直接git pull 默认的是merge的合并方式,想要采用rebase合并的方法,加上--rebase参数即可,如下:
git pull --rebase(采用rebase方法合并,听下来去修改冲突)
写了一堆带功能的代码:想要分步提交:
git add -p
git diff
手动删除本次不提交的内容,留下本次要提提交的内容
git commit -m '描述'
版本回退
1. git log 查看所有提交的版本号
2. git reset --hard 版本号(如:0869797ff6d268926834c8765bccb53093e07ed9) //或者使用 git reset --soft 02f26f7
(备注:可以在执行git log 后复制要切换到的版本号,或者复制远程历史提交的版本号)
3.(因为git log 只能看到当前版以及当前版本之前的历史版本号,看不到之前那个新版本的版本号)
如果由新版本回退到旧版本,然后又想回到新版本,那怎么知道新版本的版本号呢?
git reflog 记录所有的历史操作,在这里可以查看到新版本的版本号,只需要复版本号的前面几位就可以了
(注意:切换版本之前要保证本地仓库是干净的)
4. git checkout . 回退到编辑前的版本
5.git checkout . 回到最新提交版本,回到编辑前的版本(邹子琴讲 todolist)
git rm app.js -- cached 删除本地git仓库里面的app.js文件(本地的app.js文件还在)
git reset HEAD -- 文件名1 将最后一次git add .到本地git仓库的文件名1从本地仓库踢出去(仅是git add . 而没有提交的文件名1 ,如果提交了是没有作用的)
链接: http://www.imooc.com/article/3396

浙公网安备 33010602011771号