这节课我们来学习如何安装 Git,以及 Git 的理论基础还有 Git 的第一次实战。
我们进入 Git 的官网:https://git-scm.com/
大家会看到这一块区域:
点击 Download 2.20.1 for Windows,就会自动开始下载了。
另外,不管你是什么系统,现在都有对应的 Git 可供下载。
双击打开下载的 exe 文件,一路Next ,就安装成功了。
初次·使用,你还需要配置一下 Git,让它知道主人是谁,这个操作非常重要,因为以后每一次 Git 的提交都会用到这些信息,一旦确定,不可再次更改。如下:
初次使用Git前的配置
•在命令行模式里输入以下命令:(用户名和邮箱都是自己的哦)
git config --global user.name "用户名"
git config --global user.email "邮箱"
Microsoft Windows [版本 10.0.17134.523]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\XiangyangDai>git config --global user.name "XiangyangDai"
C:\Users\XiangyangDai>git config --global user.email "[email protected]"
C:\Users\XiangyangDai>git config --list
core.symlinks=false
core.autocrlf=true
core.fscache=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
help.format=html
rebase.autosquash=true
http.sslcainfo=D:/ProgramFiles/Git/mingw64/ssl/certs/ca-bundle.crt
http.sslbackend=openssl
diff.astextplain.textconv=astextplain
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
credential.helper=manager
user.name=XiangyangDai
[email protected]
C:\Users\XiangyangDai>
事实上,这就跟注册是一样的。在最下面两行如果看到是你刚才输入的信息,就说明配置成功了。
你之前可能会听到过 “30分钟教会Git" 之类的教程,我敢跟你保证,他们 100% 只是告诉你界面模式下的一些按钮的使用和功能而已,本系列教程主要是讲解 Git 原生态的命令行模式。我们不打算讲Git的界面模式。
•主要原因如下:
–大多数界面模式只实现Git的常用命令,而命令行模式拥有Git的所有命令
–学会命令行模式,界面模式自然会用
–既然你们都要学进阶的极客系列教程了,就不能厌烦命令行操作了
因为当你熟练掌握命令行操作之后,工作效率事实上要比界面操作快得多。
前面的准备工作做好之后,我们就要进入非常重要的理论基础部分了。
通常教程我们都是不喜欢讲解理论的,一般都是通过案例来讲解一个个的小知识点。但是对于 Git 来说,理论基础部分必不可少。因为 Git 比你想象中的要复杂得多,甚至连 Linux 核心开发者 Andrew Morton 曾经说过:“Git 的设计让使用者觉得自己比想象中的笨”。因为同一个事情,Git 提供了太多种方法实现了。所以,如果你没有很好地掌握接下来的理论基础,那么你在学习的过程中就很容易犯迷糊。
不要高估自己的智商,不要低估Git的能耐!
事实上你需要掌握的理论基础也非常简单,就两点:
如果你有使用过SVN或者其他类型的版本控制系统,你就会知道,它们的工作原理其实就是记录每一次版本变动的内容。
Git则是将每个版本独立保存
这种设计看似会消耗更多的空间,但是在分支管理上,它却是带来了很多的便利和益处,分支管理在后面介绍。
普通的程序员是把很多的时间放在写代码和调Bug上,而优秀的程序员是将更多的精力放在设计上!
没错,Git 就是通过来维护这三棵树来实现版本控制的,三棵树分别是:工作区域、暂存区域和Git仓库
工作区域:就是平时存放项目的地方,看得见的文件夹;
暂存区域:临时存放你的改动,事实上是一个文件,保存的就是即将提交到 Git 仓库的列表信息;
Git 仓库:最终安全存放所有版本数据的位置,这里有你所有提交的版本数据,HEAD指针就是你最新提交的内容。
•Git的工作流程一般是酱紫:
1.在工作目录中添加、修改文件
2.将需要进行版本管理的文件放入暂存区域
3.将暂存区域的文件提交到Git仓库
•Git管理的文件有三种状态:
–已修改(modified)
–已暂存(staged)
–已提交(committed)
理论到此结束,如果以前没有接触过Git的同学,现在肯定是一脸懵逼,没关系,你只要记得有三棵树就可以了,然后上面的理论非常重要,但是现在你不理解它也没关系,你以后遇到问题就来看一下三棵树,问题就会迎刃而解。
因为我们之后所讲解的Git的所有操作,都是在这三棵树之间搞来搞去,所以,我们现在来实战,让理论付诸于实践。
首先,我们需要建立一个大本营,我们选择在E盘建立一个名为 MyProject 的文件夹。
然后在cmd 中切换到E盘,
C:\Users\XiangyangDai>E:
E:\>cd MyProject
输入,git init,回车,就创建了
E:\MyProject>git init
Initialized empty Git repository in E:/MyProject/.git/
你会发现,它这里创建了一个空的 git 仓库。这个文件夹就是 git 用于跟踪管理版本迭代的。
这里面的东西大家眼看手勿动,否则就会引起项目版本管理异常。
现在我们假装来做一个大项目:
在写任何大项目之前,我们都会有一个 readme ,让其它开发人员来看到你的文档。我们创建一个 readme.md,最近比较流行 md 文本。(这里是在工作目录中添加、修改文件)
然后 cmd 中:git add README.md (这里将需要进行版本管理的文件放入暂存区域)
此时不会弹出任何消息。
接下来我们再将文件提交到 Git 仓库。(这里是将暂存区域的文件提交到Git仓库)
E:\MyProject>git add README.md
E:\MyProject>git commit -m "add a readme file"
[master (root-commit) d1dc82b] add a readme file
1 file changed, 1 insertion(+)
create mode 100644 README.md
commit 是提交的意思,-m 选项后边跟着的是本次提交的说明,就是大概描述这一版本做了哪些改动,以便今后可以迅速查看。
总结一下,将工作目录的文件放到 Git 仓库只需要两步:
Step One -> git add 文件名
Step Two -> git commit -m "你干了啥"
这一讲你看起来可能觉得有点蒙,不好理解我们到底干了啥,但是请你接下来往下学习,情况就会变好了。