Git版本控制
关于Git版本控制的一些笔记,以及在windows下的一些常规操作
Note
1. 三棵树:工作目录、暂存区域和Git仓库
Working Directory <-> Stage(Index) <-> Repository(Head)
工作目录:平时存放项目的地方
暂存区域:一个文件,存放临时的改动,即将提交到仓库的列表信息
Git仓库:最终存放版本数据的位置(HEAD指针指向最新版本)
2. 将每个版本独立保存
3. Git管理的文件的三种状态
- 已修改(modified)
- 已暂存(staged)
- 已提交(committed)
Git的工作流程
一般工作流程
- 在工作目录中添加、修改文件
- 将需要进行版本管理的文件放入暂存区域
- 将暂存区域的文件提交到Git仓库
1.在工作目录中添加、修改文件(自己操作)
1 | C:\Users\Administrator\Documents\GitHub>cd MyProject |
2.将需要进行版本管理的文件放入暂存区域(没提示信息即ok)
1 | C:\Users\Administrator\Documents\GitHub\MyProject>git add README.md |
3.将暂存区域的文件提交到Git仓库
commit命令 双引号内是本次提交的说明
1 | C:\Users\Administrator\Documents\GitHub\MyProject>git commit -m "add a readme file" |
实战
将工作目录的文件放到Git仓库只需要两步
- -git add 文件名
- -git commit -m “你干了啥,新版本注释”
查看状态
1 | git status |
显示Untracked files,工作目录新添加、修改的文件而未添加到暂存区域或提交到Git仓库
1 | C:\Users\Administrator\Documents\GitHub\MyProject>git add LICENSE |
回滚
1 | git reset HEAD |
可以让最近一次提交到Git仓库的文件回到暂存区域
1 | git reset HEAD <file> |
可以让file文件从Git仓库回到暂存区域
1 | C:\Users\Administrator\Documents\GitHub\MyProject>git reset HEAD |
Note:红色表示在工作目录(?);绿色表示在暂存区域,等待被提交。
是否?你查看了工作目录的status,那么文件就默认到暂存区域了,add就提交到Git仓库了
用提交到Git仓库的文件,覆盖工作目录的文件变化
1 | git checkout -- <file> |
file,如”modified: LICENSE”
查看历史提交
1 | git log |
1 | C:\Users\Administrator\Documents\GitHub\MyProject>git log |
回到过去
参考”reset&checkout.png”
1 | sequenceDiagram |
附录 – Windows初次使用Git前的配置
在命令行模式里输入以下命令:
1 | -git config -- global user.name "username" |
然后输入
1 | git config --list |
出现邮箱和用户名即ok