一、区分Git与GitHub
1、Git
-
一款免费、开源的分布式版本控制系统。就是将同一个Git仓库,分布到不同的电脑上。
-
这样工作时就必须找一台电脑充当服务器仓库的角色,每天24小时开机,其他每个人都从这个服务器仓库中拉取别人的提交,并且各自把各自的提交推送到这个服务器仓库里。
-
但这是很不方便的,如果有个远程的免费的仓库可以使用才是最好的。
2、Github
-
用Git做版本控制的代码托管平台。也就表示这样的代码托管平台可以有很多个,Git和GitHub不是一一对应关系。
-
GitHub就是提供Git仓库托管服务的,只要注册一个GitHub账号,就可以免费获得Git远程仓库。
-
也就是有了这个远程仓库之后,一起合作的小伙伴拉取或是提交都是面对这个远程仓库就可以了。
二、Git
1、Git是什么?
- Git是目前世界上最先进的分布式版本控制系统(没有之一)。
2、什么情景下,需要版本控制系统?
- 如果几个同事一起合作编辑一个文件,如果全靠人工的话,就需要保留每个时期,每个人的版本,以便之后查看,修改。还得整理出包含每个改动的最终版,这个最终版只要有人改动,就得找到那个改动的地方,然后更新。总之,整个过程是非常耗费时间和人力的。
- 由此需要,产生了版本管理系统,它可以自动帮我们记录每次文件的改动,还可以让同事协作编辑,也不用自己管理一堆类似的文件,也不需要把文件传来传去。
3、了解了版本控制系统,分布式如何理解?
-
分布式:每个人电脑上都有完整版本,没有网络也可以工作,可以同事之间交换修改部分,也可以统一设立中央服务器,然后得到每个人修改的记录。
-
与分布式对应的是集中式。
-
集中式:将整个文件统一放在特定服务器上,工作的时候先要从这个服务器上获取到最新版本,然后再进行自己的编辑修改,完了再提交到此服务器上。所以如果没有网络,就没法工作了。
4、Git怎样使用?
-
要先安装Git,再这里有详细的各个操作系统下的安装步骤。
-
装好之后,我们要理解到,Git管理的单位或是范围称为“仓库”,其实也就是某个你想管理的文件夹(目录)。
-
你可以建立多个仓库,有些是本地自己用Git管理,有些是托管在GitHub或码云或别的远程平台上。
5、例子:本地用Git管理文件
-
(1)在合适的位置创建空的目录,作为版本库
- 这个目录(版本库)里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
- 使用e:就不能进入e盘了,因为e:是windows下的命令。
- 在e盘下新建了gitproject,然后又在其下新建了localfile文件,准备将localfile作为本次实验的git仓库。
-
(2)在当前目录下,通过git init命令把这个目录变成Git可以管理的仓库
- 执行git init命令之后,从“我的电脑”打开localfile,则会看到localfile目录下有个.git目录,这个目录就是Git用来跟踪管理版本库的。
-
(3)然后在localfile下新建文件test.txt,并写些内容进去
- 例如在文件中写如下文字:
-
(4)用命令git add告诉Git,把文件添加到仓库
- 没有任何反应,说明执行成功。
-
(5)用命令git commit告诉Git,把文件提交到仓库
- git commit -m之后双引号中是本次修改的描述,可以写你觉得可以描述本次行为的任何有意义的内容,以便之后查阅。
- 你可以多次执行git add命令,之后再使用git commit一次进行提交。
- 当你用git add命令后,相当于将一次修改放入暂存区,准备提交,所以可以将多次修改放入缓存区之后,一次提交。
-
(6)当我们再次修改了test.txt文件之后,再执行git status命令,可以得到如下结果
- 它会告诉你仓库当前的状况:test.txt被修改了,但是还没有放入缓存,也还没提交。
-
(7)用git diff这个命令,可以查看我们具体做了什么修改
- 我当下的test.txt内容为:
-
(8)接着执行git add,再执行git status
- 它会告诉我们当前仓库的状况是:将要被提交的文件是test.txt。
-
(9)然后执行git commit -m "第二次修改",再执行git status
- 它告诉我们当前仓库的状况是:没有需要提交的内容。
-
(10)使用git log命令查看所有历史记录
- 用蓝色圈出来的部分就是我们每次提交时候写在 -m 之后的描述,可以简单清晰了解每次大概改动的地方。
7、常见命令总结
命令 | 描述 |
---|---|
git init | 将当前目录变成git仓库 |
git add | 将修改文件放入缓存区 |
git commit -m "描述文字" | 将缓存区中文件提交 |
git status | 查看当前仓库的情况 |
git diff | 查看具体修改内容 |
git log | 查看历史记录 |
8、题外话
-
命令行
-
命令行是与图形界面操作一个意思,就比如图形界面上鼠标右键选择新建文件,那这个操作在命令行就可以用某个命令去完成。
-
命令行在不同操作系统上会有不同的命令行工具,例如windows上是cmd,Linux下是shell。
-
而如果下了一个软件,里面的操作是用命令行操作的话,它也会提供命令行工具,就比如下载Git,它提供了git bash,在里面写命令来操作。(这个软件是基于哪个操作系统开发的,则它提供的命令行工具,也会延续该操作系统的命令,所以git bash也就当作Linux环境下的命令行工具。)
-
三、GitHub
1、GitHub是什么?
- GitHub是一个基于Git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。
2、如何使用GitHub?
-
(1)要想使用GitHub第一步当然是注册GitHub账号了,GitHub官网地址:https://github.com/。
图15
-
(2)在本地创建ssh key,使用命令:ssh-keygen -t rsa -C "你注册GitThb时的邮箱"。
图16-
1.创建ssh key命令
-
2.ssh key保存路径
-
3.输入GitHub登陆密码
-
4.生成的key
-
-
(3)进入Account Settings(账户配置),进行配置。
图17 图18 -
(4)创建Github的存储仓库。
-
(5)验证是否配置成功,输入命令:ssh -T git@github.com。
-
(6)创建Git用户,并创建版本库,上传本地项目至Github存储仓库。
-
操作命令步骤:
-
cd 本地项目位置
-
git init
-
git config user.name "用户名"
-
git config user.email "邮箱"
-
git add *
-
git commit -m "备注"
-
git remote add origin https://github.com/GitHub用户名/仓库名.git
-
git push -u origin master
-
-
网友评论