1. 为什么需要git?
个人在工作或者学习的时候会遇到这种事情:
写论文:一个论文可能要修改很多次,可能会产生很多个版本
- Java入门到精通.word 原版
- Java入门到精通.word 原版2019.4.20 XXXX.修改了 java历史
- Java入门到精通.word 修订版2019.5.20 XXXX.修改了 名字错误
- Java入门到精通.word 终极版2019.6.20 XXXX.修改了 名字错误
- Java入门到精通.word 最终版2019.7.20
- 辞职信,…
我们需要一个东西来进行版本的控制管理;
那么这个问题如果发展到一群人?
比如说我们公司协同开发一个网站:
- 总共的代码就一份
- 但是会有多个人去共同开发
- 每个人都有每个人的事情,我们无法做到统一;
解决方案: 集中式处理;
-
每个人修改完毕,就提交到一个大家都能访问到的服务器;
-
每个人要增加或者修改代码,需要同服务器上拿来最新的代码;
-
修改完毕后,再次提交,保证服务器中有最新的代码;
解决方案优化: 分布式处理; -
每个人写完代码后,立马将更新的东西告知所有人;
-
每个人都拥有全部的代码;
-
每个人都是一个独立的服务器代码库;
-
假设一个人的代码丢了,直接从别人那个拷贝一份即可;
版本控制
在开发或者工作中,你每一次修改都会产生一次对应的记录,记录修改者,修改的内容,修改的时间等等。
方便开发人员及时获取最新的动态,并且知道更新了什么地方。
简单的说,就是多人协同开发的一个基础
分布式 VS 集中式
分布式: 开源项目
- 不会被服务器限制
- 所有人可以拿到最新的源代码
- 不安全。
集中式: 公司内部项目
- 只有一个公共的服务器
- 所有人写代码之前,需要去拿最新的代码过来
- 写完之后,要及时提交代码到服务器
- 安全。
2. Git起源
Git 是世界上最先进的分布式版本控制系统;
Git是免费的,开源的;
创始人:Linus Benedict Torvalds
- linux最初只有他一个人维护,后来慢慢越来越多的人加入修改的建议,提交代码;
- 所有人的代码,都从世界各地发给他,由他一个人编写进Linux内核中。他慢慢的就烦了。
- 找一个可以进行版本控制的平台 ; BitKeeper 免费的给Linux社区使用;
- Linux社区中存在许多大佬,他们试图破解BitKeeper协议;BitKeeper就不愿意再免费给他们使用了;
- 于是乎 Linus ,他花了两周时间,用c自己写了一个版本控制的管理系统,而且是分布式的;
- 这就是后来大名鼎鼎Git ;
- 后来有人基于个Git搭建了开源的平台 , Github 开源所有人都可以去使用的
- 我们也可以搭建自己的版本库—GitLib。
- 2019年,在中国的今天,我们选择使用 码云 Gitee 来作为项目源代码存放的地方
- 不受网络的限制
- 国人开发
- 社区十分活跃
- 类似的平台还有Coding等等。
3. 下载使用Git
官网下载地址:https://git-scm.com/ 官网下载十分的漫长;
淘宝Git镜像下载地址:http://npm.taobao.org/mirrors/git-for-windows/ 【推荐】
一路傻瓜式安装即可;
我们打开git-bash;
按住ctrl+鼠标滚动可以调节自己的大小
4. Linux常用命令
pwd:查看当前所在目录
cd :切换文件夹
- cd ~ :切换到用户所在目录
- cd / :切换到根目录
ls :列出清单
- ls -a : 就是 ls -all
我们现在进入我们的桌面
清空屏幕: clear
创建一个文件夹 : mkdir 文件名
删除一个文件夹: rm -r test
创建一个文件: touch 文件名
向文件中写入内容 : echo 内容 > 文件名
查看历史记录 : history
查看命令帮助文档: 命令 --help
git设置用户名和邮箱
git安装完之后第一步就应该是这是用户名和邮箱;相当于一个标识,你之后每次一提交项目,都会附带这个信息;
git config --global user.name "princess_li"
git config --global user.email 1002489536@qq.com
必须要配置这两个属性。
查看Git全部的配置;
必须要配置这两个属性。
查看Git全部的配置;
git config -l # 查看git的全部配置
git config --global --list #查看当前用户的配置
这些信息既然可以保存,那么到底保存在我们系统的什么地方了呢?
git配置文件存放地址:
- 用户配置的global文件。 c盘:/用户/${当前用户}/ .gitconfig
- 系统配置文件; \Git安装路径下面\mingw64\etc\gitconfig
5. Git 工作理论
git的工作目录有哪些?
- 工作目录 : 就是自己电脑上的一个属于git的文件夹;
- 暂存区 :我们看不到,提交的信息暂存在这里
- Git本地仓库 :我们看不到 , 通过暂存区提交过来
- Git远程仓库 : GitHub、码云等等,负责托管我们的项目 , 需要从Git本地仓库提交过来;
获得一个Git仓库
- 本地搭建一个仓库
- 随便在一个位置建立一个文件夹
- 在文件夹中右键 , git bash here ,在这个文件夹下打开git命令行
- 输入命令 git init ;
- 发现在文件中多了一个隐藏的文件夹 .git
- 至此,一个本地的git仓库就搭建成功了。
- 我们先在工作目录下创建一test.txt , 写入一段话,Hello,Git
- 通过git add命令将这个文件添加到暂存区 , 通过 git status 查看当前状态
- 暂存区对应 :.git隐藏文件下的 index文件
- 我们通过 git commit -m “注释” 提交到本地仓库
- 通过git status 查看是否提交成功!
- 本地测试OK;
- 远程克隆一个仓库 git clone []
- 我们可以github或者码云上去克隆一个项目;
- 克隆完成
- 我们可以github或者码云上去克隆一个项目;