目录
1. git diff HEAD -- readme.txt命令可以查看工作区和版本库
2. git checkout 用版本库里的版本替换工作区的版本
一、Git的操作思路
二、创建版本库(到HEAD中,其中存的是当前的版本)
1、git init
2、git add readme.txt
git add readme.txt
- 使用命令
git add <file>
,注意,可反复多次使用,添加多个文件;
3、git commit -m "message"
git commit -m "wrote a readme file"
- 使用命令
git commit -m <message>
,完成
三、回退
3.1 版本回退(已经到了HEAD了)
1. git log 可以查看提交历史,以便确定要回退到哪个版本
git log --pretty=oneline
2. git reset --hard + commit id(或者HEAD的版本)回退
-
当前:HEAD
-
上一个:HEAD^
-
上上个:HEAD^^
-
上100个:HEAD~100
$ git reset --hard HEAD^
HEAD is now at e475afc add distributed
$ git reset --hard 1094a
HEAD is now at 83b0afe append GPL
$ cat readme.txt
Git is a distributed version control system.
Git is free software distributed under the GPL.
3. git reflog
查看命令历史,以便确定要回到未来的哪个版本
3.2 文件回退
- 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令
git checkout -- file
。 - 场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,
第一步用命令git reset HEAD <file>
,就回到了场景1,
第二步按场景1操作。
- 场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库
3.3 文件删除
- 命令
git rm
用于删除一个文件。 - 如果一个文件已经被提交到版本库,那么你永远不用担心误删,
但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容
四、远程仓库 GitHub
4.1 创建远程仓库(GitHub)
4.2 将现有的项目关联到远端仓库
git remote add origin git@github.com:michaelliao/learngit.git
git push -u origin master
4.3 或直接将远端仓库项目clone到本地
git clone git@github.com:michaelliao/gitskills.git
git clone https://github.com/michaelliao/gitskills.git
五、分支管理
五、git push 报错
其他命令
1. git diff HEAD -- readme.txt
命令可以查看工作区和版本库
里面最新版本的区别
2. git checkout 用版本库里的版本替换工作区的版本