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