GitHub相关简介以及其和Git区别?

简介: GitHub相关简介以及其和Git区别?

集中式Vs分布式

集中式版本控制系统

1、原理:版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器

2、比喻 :中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆

3、缺点:必须联网才能工作

4、实际应用:

开源免费的:

CVS(最早的开源而且免费的集中式版本控制系统)由于CVS自身设计的问题,会造成提交文件不完整,版本库莫名其妙损坏的情况

SVN(修正了CVS的一些稳定性问题,是目前用得最多的集中式版本库控制系统)

收费的:IBM的ClearCase(以前是Rational公司的,被IBM收购了)安装大,运行慢

分布式版本控制系统

1、原理:分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,工作的时候,就不需要联网了,每个人电脑上都有一个完整的版本库,当我在自己电脑上改了文件A,同事在他的电脑也上改了文件A,我们只需把各自的修改推送对方,就可以互相看到对方的修改了。这样就实现了多人协作。(实际使用时很少在两人之间的电脑上推送版本库的修改,因为必须要在一个局域网内,两台电脑才能互相访问)

2**、优点**:安全性提高很多,每个人电脑里都有完整的版本库,某一个人的电脑坏掉了直接从其他人那里复制一个就可以。而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了

3、实际应用:开源免费的:GitHub,是最快、最简单也最流行。商用的:BitKeeper,Mercurial和Bazaar等。

GitHub安装

步骤:

1、直接从官网下载:https://git-scm.com/downloads

2、安装完成后,找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西说明安装成功

3、最后一步设置,在命令行输入

$ git config --global user.name “Your Name”

$ git config --global user.email “email@example.com”

GitHub下载代码方式

GitHub 有三种方式下载代码:

HTTPS:使用登录 github 的用户名和密码,即可clone 项目。

SSH:通过上传 SSH key 到 GitHub 后台,这样无需密码即可 clone 项目。

GitHub CLI:平台提供管理仓库的终端工具,还可以使用 Github 提供的一些额外功能。

免密下载代码

配置ssh key,可以免密下载Github代码,既方便又安全,需要使用到 ssh-keygen 工具。

# 1、打开 Terminal(终端),查看已有密钥(.pub后缀的文件名)
$ ls -al ~/.ssh
# 2、如果没有就创建一个
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
# 3、复制下面输出到剪切板(下面两个适用mac系统)
$ cat ~/.ssh/id_rsa.pub
$ pbcopy < ~/.ssh/id_rsa.pub
$ cat ~/.ssh/id_rsa.pub | pbcopy
# 4、登录github官网,按照这个路径新建 SSH key
Settings --> SSH and GPG keys --> New SSH key
1、填写名字(随意填写,保证下次看到能明白是哪里的key);
2、粘贴剪切板内容到key的输入框中;
3、保存。
# 5、Terminal(终端)检查是否可以成功连接
$ ssh -T git@github.com
# 6、Github随便找个项目,测试下载,看看是否成功
$ git clone git@github.com:shipwright-io/build.git

GitHub 与 Git 的区别

Git和GitHub是两个完全不同的概念!

Git是一个版本管理工具,开发者将源代码存入名叫“Git 仓库”的资料库中并加以使用,由Linus Torvalds编写。

GitHub 是在线的基于Git的代码托管服务,2008年由Ruby on Rails编写而成。

GitHub 除提供 Git 仓库的托管服务外,还为开发者或团队提供了一系列功能,帮助其高效率、高品质地进行代码编写。

要想更好地使用GitHub,学习Git是必备之路!


相关文章
|
28天前
|
开发工具 git 开发者
图解Git——分支简介《Pro Git》
Git 分支是其核心特性之一,允许开发者从主开发线分离工作,避免干扰主线。传统版本控制系统创建分支效率低,而Git的分支创建和切换非常轻量高效。
70 9
|
3天前
|
开发工具 git
git fetch和 pull的区别
`git fetch`和 `git pull`在Git中扮演着不同的角色,了解它们的区别和使用场景对于高效管理代码库至关重要。通过合理使用这两个命令,可以更好地控制代码合并过程,减少冲突,提高团队协作效率。
130 97
|
1月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
186 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
2天前
|
开发工具 git
git fetch和 pull的区别
通过这些内容和示例,您可以系统地理解 `git fetch`和 `git pull`的区别,并在实际工作中灵活应用这两个命令,提高版本控制的效率。希望这些内容对您的学习和工作有所帮助。
33 24
|
4天前
|
开发工具 git
git的rebase和merge的区别
通过这些内容和示例,您可以深入理解Git的 `rebase`和 `merge`操作及其区别,选择合适的方法进行分支管理,提高版本控制的效率和规范性。希望这些内容对您的学习和工作有所帮助。
31 5
|
4天前
|
网络安全 开发工具 git
解决 Git 访问 GitHub 时的 SSL 错误
通过上述步骤,可以有效解决 Git 访问 GitHub 时的 SSL 错误。推荐优先更新 CA 证书和正确配置 Git 使用 CA 证书,避免禁用 SSL 验证。如果问题持续,可以切换到 SSH 方式访问 GitHub,确保连接的安全性和稳定性。希望这些内容对您的学习和工作有所帮助。
49 3
|
1月前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
85 16
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
3月前
|
网络安全 开发工具 git
解决fatal:remote error:You can’t push to git://github.com/username/*.g
通过上述诊断与修复步骤,绝大多数的推送错误都能得到有效解决,确保您的Git工作流顺畅无阻。
299 1
|
3月前
|
Linux 网络安全 开发工具
IDEA如何配置git和github
【11月更文挑战第14天】本指南详细介绍了如何在 IntelliJ IDEA 中配置 Git 和 GitHub,包括检查和设置 Git 路径、测试配置,以及通过 SSH 或 HTTPS 方式配置 GitHub 仓库的具体步骤。完成配置后,用户可在 IDEA 中轻松进行版本控制操作。
473 0
|
4月前
|
存储 开发工具 git
Git和SVN有什么区别?
综上所述,选择Git还是SVN取决于项目的具体需求、团队规模以及工作习惯。Git因其高级特性和灵活性,成为了现代软件开发中更受欢迎的选择,而SVN在某些特定场景下仍保有一席之地。开发者应当根据实际情况,权衡两者之间的优劣,作出最适合项目的选择。
137 4