Git
版本控制
什么是版本控制
版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。
- 实现跨区域多人协同开发
- 追踪和记载一个或者多个文件的历史记录
- 组织和保护你的源代码和文档
- 统计工作量
- 并行开发、提高开发效率
- 跟踪记录整个软件的开发过程
- 减轻开发人员的负担,节省时间,同时降低人为错误
简单说就是用于管理多人协同开发项目的技术。
没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。
无论是工作还是学习,或者是自己做笔记,都经历过这样一个阶段!我们就迫切需要一个版本控制工具!
启动Git
安装成功后在开始菜单中会有Git项,菜单下有3个程序:任意文件夹下右键也可以看到对应的程序!
Git Bash:Unix与Linux风格的命令行,使用最多,推荐最多
Git CMD:Windows风格的命令行
Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令
常用的Linux命令
平时一定要多使用这些基础的命令!
1)、cd : 改变目录。
2)、cd . . 回退到上一个目录,直接cd进入默认目录
3)、pwd : 显示当前所在的目录路径。
4)、ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。
5)、touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。
6)、rm: 删除一个文件, rm index.js 就会把index.js文件删除。
7)、mkdir: 新建一个目录,就是新建一个文件夹。
8)、rm -r : 删除一个文件夹, rm -r src 删除src目录
rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!9)、mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。
10)、reset 重新初始化终端/清屏。
11)、clear 清屏。
12)、history 查看命令历史。
13)、help 帮助。
14)、exit 退出。
15)、#表示注释
Git配置
设置用户名称和 e-mail 地址
git config --globsl --list #查看当前用户配置
配置代理
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy https://127.0.0.1:7890四大工作区域:
Git 本地有三个工作区域:
- 工作区(Working Directory)
- 暂存区(Stage/Index)
- 仓库区 (Repository)
- 再加上远程的 git 仓库(Remote Directory) 就可以分为四个工作区域
具体说明一下:
- 工作区:就是你平时存放代码的地方
- 暂存区:用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
- 仓库区(本地仓库):就是安全存放数据的位置,这里面有你提交到所有版本的数据
- 远程仓库:就是托管代码的服务器(比如 Github/Gitee),也可以简单的认为是一台用于远程数据交换的电脑
工作流程
git的工作流程一般是这样的:
1、在工作目录中添加、修改文件;
2、将需要进行版本管理的文件放入暂存区域;
3、将暂存区域的文件提交到git仓库。
因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)

本地仓库搭建
创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库。
创建全新的仓库
# $ git init- 在已有的项目代码文件夹处右键,点击Git Bash Here进入命令行输入 git init ,然后就会出现一个隐藏的文件夹 .git

克隆远程仓库
1、另一种方式是克隆远程目录,由于是将远程服务器上的仓库完全镜像一份至本地!
# $ git clone [url] # https://gitee.com/kuangstudy/openclass.git
文件的4大状态:
- Untracked: 未跟踪,在文件夹中,,但并没有加入到 git 库,,不参与版本控制,需要通过 git add 状态变为 Staged
Unmodify: 未修改,文件已经入库,而且与工作区的内容相同。
- 如果想要把他移出版本库,可以使用 git rm 移出去不再同步
- 如果被修改了,就会变成 Modified 已修改状态
Modified: 已修改,这种文件有两个去处
- 可以使用 git add 将其加入暂存区
- 也可以使用 git checkout 丢弃修改过的内容,返回到刚刚 未修改 的状态(即从库中取出文件,覆盖当前已修改的文件)
Staged: 暂存状态,同样,也有两个去处
- 执行 git commit 则将其同步到库中,此时版本库与工作区一致,变成未修改状态
- 执行 git reset HEAD filename 取消暂存, 文件状态变为已修改状态
执行流程
git add . 加入暂存区
git status 查看状态使用 git commit -m "自定义一些需要携带的信息"
git commit -m "第一次提交"把当前的文件夹和远程仓库绑定 git remote add origin [远程仓库URL地址]
git remote add origin https://github.com/DreamTes/GIt_demo.git检查一下我们的仓库分支是什么,这个是一开始新建仓库时可以指定的,比如main或者master,刚刚在GitHub建仓库的时候默认是main了
调用push指令将其更新到远程仓库,指令是 git push -u origin [仓库分支]
git push -u origin mainVscode使用git
重新写了一个txt文件
提交上传本地仓库
此时本地仓库要先于github,继续点同步即可上传github
评论已关闭