git config初始配置(自报家门):
--global参数表示你这台机器上所有的Git仓库都会使用这个配置
git init创建初始化仓库:
git add添加文件到仓库:
git commit提交文件到仓库
git status显示当前的状态
告诉我们工作区和版本库就不一致的情况
$ git status
On branch master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
deleted: test.txt
git diff查看difference
显示的格式正是Unix通用的diff格式
git log显示从最近到最远的提交日志查看版本变更
--pretty=oneline参数减少信息输出
git reset回退到上一个版本
git reflog用来记录你的每一次命令:
查看commit_id,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id
git checkout -- file可以丢弃工作区的修改
-- file命令中的“--”很重要,没有“--”,就变成了“创建一个新分支”的命令(add之前)
git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区
既可以回退版本,也可以把暂存区的修改回退到工作区。(commit之前->add之前)
git reset --hard HEAD^回退到上一个版本(已经在master中了)
还没有把自己的本地版本库推送到远程。(commit之后)
git rm从版本库中删除该文件
git checkout原理是用版本库里的版本替换工作区的版本
无论工作区是修改还是删除,都可以“一键还原”。