上传操作

初始化:

Git init

添加文件:

git add <fileNmae> 添加文件foleName
git add -A 			添加所有文件

添加注释:

Git commit -m "this is a explain"

上传到github:

git push

版本回退操作

查看历史版本:

Git log		查看历史记录日志,即版本更替历史
	git log --pretty=oneline 显示简单的信息
	其中一大串的 1094adb... 是commit id(版本号)

回退版本:

Git reset --hard HEAD^	退回上一个版本
	HEAD	当前版本
	HEAD^ 	前一个版本
	HEAD^^	前两个版本
	HEAD~100	前面100个版本
Git reset --hard <版本号前几位>
	Git会自动匹配版本号

恢复回退的版本:

Git reflog	显示记录的每次命令(找到回退前的版本号,如果找到想要恢复的版本号就不用此步
Git reset --hard <版本号前几位>

撤销当前编辑

git checkout -- readme.txt
	意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
  1. 一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
  2. 一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
    总之,就是让这个文件回到最近一次git commit或git add时的状态。

Git reset HEAD <file> 将缓存区(即已经add但是没commit的文件)撤回工作区 '

小结

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD ,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

删除文件

Git rm <file>	删除文件,不管是不是被手动删了
Git commit -m "delete info"

误删的话

Git checkout -- <file>	将版本库里的文件替换工作区的版本

其他操作:

Git status	查看仓库的状态
Git diff	查看difference,即可以查看当前添加的文件的改变详情