$ git init
$ git add <file>
$ git commit -m "description"
git add
可以反复多次使用,添加多个文件,git commit
可以一次提交很多文件,-m
后面输入的是本次提交说明。
git add -A .
git add -A
表示添加所有内容git add .
表示添加新文件和编辑过的文件不包括删除的文件git add -u
表示添加编辑或者删除的文件,不包括新添加的文件。
$ git status
git diff
查看工作区(work dict)和暂存区(stage)的区别git diff --cached
查看暂存区(stage)和分支(master)的区别git diff HEAD -- <file>
查看工作区和版本库里面最新版本的区别
$ git reset --hard HEAD^
以上命令是返回上一个版本,在Git中,用HEAD
表示当前版本,上一个版本就是HEAD^
,上上一个版本是HEAD^^
,往上100个版本写成HEAD~100
。
$ git reset --hard commit_id
commit_id是版本号,是一个用SHA1计算出的序列
- 退回工作区
$ git reset HEAD <file>
- 撤销工作区的修改
$ git checkout -- <file>
Tip:
- 当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令
git checkout -- <file>
。 - 当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令
git reset HEAD <file>
,就回到了第一步,第二步按第一步操作。 - 已经提交了不合适的修改到版本库时,想要撤销本次提交,进行版本回退,前提是没有推送到远程库。
git checkout -- file
命令中的--
很重要!很重要!很重要!,没有--
,就变成了切换到另一个分支的命令