git是一种分布式的版本控制器,较之SVN的集中式的版本控制方式。优点谁用谁知道。废话不多说。
下面来看下git的强大之处:
1.版本回退
git reset --hard HEAD^
git reset --hard commitid
2.日志查看
git log
git log --pretty=oneline
git log --graph --pretty=oneline --abbrev=commit
git reflog
3.提交暂存区
gti add read.txt
git add .
查看工作空间:
git status
4.提交 版本库
git commit
git commit -m "description"
5.撤销修改
撤销工作区的操作:git checkout -- read.txt
撤销暂存区的操作:git reset -- read.txt 或 git reset HEAD read.txt (HEAD 表示最新版本 )
特别是可以使用 git checkout HEAD -- read.txt 代替上面两布。一步到位。
如果已经提交到版本库怎么办?
不好意思,使用 git reset --hard HEAD^ 或者 git rest --hard commit id
6.已经提交到版本库的文件。如果在工作区被删除怎么办?
git rm read.txt
git commit -m "description"
此种行为属于版本库同步。把版本库里的文件也删除。
git checkout -- read.txt 无论对工作区的文件做何种操作。修改还是删除。都一键还原成版本库里的文件。前提是版本库里面有这个文件,并且没有add到暂存区
当然如果不是对一个文件。两个文件进行回退撤销。而是对整个版本进行回退使用git reset --hard HEAD^。 (貌似对版本做操作的都要加上--hard)
7.查看版本差异
查看工作区和版本库里的代码的区别
git diff HEAD 比价工作区和版本库的区别
git diff 比较工作区和暂存区的区别
git diff --cached 比较暂存区和版本库的区别