git介绍
-
概念
- 他是一个分布式版本控制系统
-
特性
- 直接记录快照
- 几乎所有的操作都是本地执行
-
git中的三种区域
- 工作区
- 暂存区
- 仓库区
-
git的三种状态
- 已修改
- 已暂存
- 已提交
-
git的基本工作流程
- 在工作区修改文件
- 将修改的文件进行暂存
- 提交更新的文件,将永久存在git中
git的使用
-
在git里面添加数据
-
将本地目录转化为Git仓库
-
生成本地git数据库
- git安装完成后,在一个文件夹里,点击右键,在里面找到GIT Bash Here 并点击,此时git面板展开
- 在面板$后面输入git init
- 此时文件夹里面出现.git文件夹
-
将文件提交到本地数据库中
-
检查本地数据库下文件的状态,和数据库是什么关系
-
在面板中输入 git status
-
-
表明没有不属于本地数据库的文件
-
-
-
在git的文件下面创建一个文件
-
检查文件的状态,在面板中输入 git status
-
-
提示一个红字显示的不属于本地数据库的文件
-
这种文件被定义为未跟踪,就是不被git管理的文件
-
-
-
将新建的文件导入本地数据库中
-
在面版输入 git add 文件名
- 添加一个文件
- 提交到暂存区
-
在面板中输入git add .
- 添加这个目录下的所有文件
- 提交到暂存区
-
检查此时文件状态
-
在面板中输入 git status
-
-
这个文件目前在暂存区
-
-
-
-
将文件从暂存区提交到仓库区中
-
在面板中输入git commit -m “
这次提交主要改变的内容” -
检查此时文件状态
-
在面板中输入 git status
-
-
这个文件目已经提交到仓库区中
-
-
-
-
总结
-
在.git文件夹下新建一个文件
- 不属于本地数据库
-
将这个为跟踪的文件使用git add 添加到本地数据库中的暂存区
- 在本地数据库的暂存区
-
将这文件从暂存区提交到仓库区
- 在本地数据库的仓库区
-
-
-
git使用的主要流程
-
新的文件提交到仓库后
-
修改这个文件的内容
-
检查此时文件状态
-
在面板中输入 git status
-
-
这个文件目前是已修改的状态
-
-
-
-
将文件提交到暂存区
-
git add 文件名
-
检查此时文件状态
-
在面板中输入 git status
-
-
这个文件目前在暂存区,modified由红变绿
-
-
-
-
将文件提交到仓库区
-
在面板中输入git commit -m “这次提交主要改变的内容”(后面的双引号写这次改变的内容)
-
检查此时文件状态
-
在面板中输入 git status
-
-
这个文件目已经提交到仓库区中,变回来文件未修改的状态
-
-
-
-
总结
-
将一个新的文件添加到本地数据库中
- 表示没有不属于数据库的文件
-
修改本地数据库中的文件的内容
- 表示文件已被修改,是红色的
-
将文件提交到暂存区
- 表示文件已修改,但是文件变绿色
-
将文件提交到仓库区
- 表示没有不属于数据库的文件
-
-
跳过暂存区,直接添加到仓库区的方法
- git commit -am “描述”
-
-
git文件其他方法的操作
-
撤销文件的修改
-
这个文件刚被修改,没有提交到暂存区
-
git checkout
- 让文件变成被修改前的内容
-
-
取消暂存区的文件
-
这个文件被修改了,且已经提交到暂存区了
-
第一步:git reset HEAD 文件名
- 是这个文件从暂存区退出,变成已修改状态
-
第二步 git checkout 文件名
- 从已修改变成被修改前的文件
-
-
移除文件
-
全部删除
- git rm -f 文件名
-
把文件从数据库中移除到数据库外
- git rm-cached 文件名
-
这个步骤需要提交到数据库中
-
-
忽略文件
-
在.git下面建立一个.gitignore
- 这个文件没有任何后缀
-
把这个步骤提交到数据库中
-
在.gitignore文件中写上相关的忽略文件的样式,类似于正则
-
-
查看提交仓库区的历史记录
-
git log
- 第一行显示提交id
- 第二行是作者的相关信息
- 第三行是日期
- 第四行是你提交仓库区写的文字信息
-
-
回退到指定的版本
-
回退到之前的版本
- git reset --hard 提交id
-
从之前的版本回到最新的版本
-
git reflog
- 获取所有的提交id
-
git reset --hard 提交id
-
-
-
-
-
从其他服务器克隆一个Git仓库
-