了解git和github,git的安装,git的应用,git初体验
一.了解git和github
git
- git:分布式版本管理器。安装在电脑里面的软件。
- 作用:
①用来管理你的文件夹(本地仓库)——管理:管理文件夹内的时间节点。
②把文件夹内的代码上传——上传到一个指定的远程位置。
注:没有可视化界面,需要命令行操作。
github
-
github:一个线上的网站。
-
作用:
①保存使用git上传的代码。
②类似社交平台,社交功能不能即时。
③开源代码,向广大用户开放代码。 -
码云:一个网站。(也需要git上传的代码 )
-
作用:
①和github功能一样。
②github是国外(全英文网站)的,码云是国内的(中文网站)。
二.git的安装步骤
- 下载:git官网。
- 安装
- 检测:
①鼠标在桌面任意位置点击右键:出现git bash here和git gui here;
②打开命令行,输入指令git --version,出现版本号表示安装成功。 - 首次安装配置(需要配置一些全局内容,为了将来上传时签名使用)
①打开cmd,进行配置
- 查看全局配置,(目录无所谓)输入指令git config --list 配置全局邮箱,(目录无所谓)输入指令git config
- –global user.email “你的邮箱” 邮箱随便写,最好是一个真实的邮箱或github注册的邮箱。 配置全局用户,(目录无所谓)输入指令git config --global user.name
- “用户名”。用户名随便写,最好是github注册的用户名。
注:
可以不进行配置,但只能做本地管理。不能上传到远程服务器。
三.git的应用
- git安装完毕后,可以在命令行使用git xxx指令。
- git安装的同时,给我们提供了一个新的命令行工具——git bash(鼠标右键git bash here,表示当期那目录下打开git命令行)。
四.git初体验
- 想让文件夹被git管理,需要告诉它。
- git管理文件夹步骤
①本地仓库初始化
需要把一个文件夹初始化为一个git仓库 这个文件夹及所有后代文件(夹)被git管理 打开命令行(cmd/git bash
here),切换到需要被管理的文件夹路径 输入指令git init 会提示初始化空仓库成功,里面会有.git隐藏文件夹。
表示.git所在文件夹及所有后代文件(夹)被git管理,就叫做本地仓库。
初始化以后:当一个目录被初始化为一个git仓库以后,文件会被虚拟的分为三个部分。
最上方:工作区——书写代码的真实位置(可以真实看到)。 中间区域:
暂存区——暂时存储生成历史版本节点的文件,当生成历史版本以后会消失。把要形成历史版本的内容暂时存储。
最下方:历史区——已经形成的历史版本,将来可以穿越回来的历史节点。只能把暂存区里面的所有内容形成历史版本,永久保存。
注:git只能上传历史区的内容。
②把工作区的内容添加到暂存区
* 工作区要有内容(.git不算)
注:空文件可以添加,但是空文件夹不管。
没有形成历史版本之前,暂存区会覆盖源文件。
* 打开命令行,切换到.git所在的目录。输入指令
1)$ git add 文件名(没有报错表示成功),则文件会保存在暂存区。
2)$ git add 文件夹名
3)$ git add --all 把当前工作区里面的所有没有添加到暂存区里面的内容全部添加到暂存区。(简写:$git add .
③查看工作区和暂存区状态
- 打开命令行,切换到.git所在的目录。
- 输入指令$ git status
④暂存区撤回内容
打开命令行,切换到.git所在的目录。输入指令
1)$ git reset HEAD – 文件名(撤回单个文件)
2)$ git reset HEAD – 文件夹名(撤回文件夹)
3)$ git reset HEAD – .(撤回所有文件)
⑤形成历史版本(把暂存区内容形成一个历史版本)
- 前提:需要暂存区有内容
- 打开命令行,切换到.git所在的目录。输入指令$ git commit -m “说明”,会形成历史版本
⑥查看历史版本(查看本地已经形成的历史版本)
打开命令行,切换到.git所在的目录。输入指令$ git log,就会以倒叙的形式出现你本地所生成的历史版本。
⑦回滚历史版本(回到之前记录的某一个历史版本的时间状态)
- 打开命令行,切换到.git所在的目录。
- 输入指令$ git reset --hard 版本id(可以回到当时的状态)
注:
历史回滚的时候,回到了过去。再过去的基础上新增了历史版本。
⑧删除历史版本
- 前提:如果已经上传,你删除的只是本地的。远程的依然保存。 * 打开命令行,切换到.git所在的目录。输入指令$ git rebase
- -i 历史版本id(进入编辑状态时,输入:wq,保存退出)
注:
- 历史版本不能写你要删除的那个历史版本,要写前一个历史版本id。
- 再删除的时候,进入编辑状态以后,将pick修改为drop,再次保存退出即可删除历史版本。