创建仓库repository
选择一个合适的地方,创建一个空目录,测试仓库位于Desktop/repository
仓库初始化: $ git init
查询隐藏的.git目录: ls -ah
把文件添加到版本库
第一步,用命令git add告诉Git,把文件添加到仓库:
$ git add xxx.xxx
第二步,用命令git commit告诉Git,把文件提交到仓库:
$ git commit -m"写一些备注之类的话"
$git status 查询仓库内容修改状态
$ git diff 仓库文件修改的具体内容
版本回退
git log 查看历史纪录,显示从最近到最远的commit日志
head(当前版本)------head^(上一个版本)------head^^(上上个版本)------head~100(第100个版本)
git reflog 查询commit id
工作区和暂存区
通过add命令将工作区中的修改提交到暂存区,随后才能通过commit命令提交
一旦提交后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的:
$ git status# On branch masternothing to commit (working directory clean)
管理修改
Git管理的是修改,当你用git add命令后,在工作区的第一次修改被放入暂存区,准备提交,但是,在工作区的第二次修改并没有放入暂存区,所以,git commit只负责把暂存区的修改提交了,也就是第一次的修改被提交了,第二次的修改不会被提交。
git diff HEAD -- xxx.xx命令可以查看工作区和版本库里面最新版本的区别
撤销修改
git checkout -- xxx.xx 丢弃工作区的修改
命令git checkout -- readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit或git add时的状态。
git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区
git checkout --xxx.xx 再丢弃工作区中的修改
若从暂存区提交到了版本库 只能通过版本回退了,前提是本地版本库没有上传至远程仓库的情况下!!!
删除文件
在Git中,删除也是一个修改操作
git rm xxx.xx,1)确认删除:rm "xxx.xx" 2)删错了:git checkout --xxx.xx