git应用

本文讲述了Linux之父Linus Torvalds因需求创建Git分布式版本控制系统的故事,以及Git的诞生背景和核心优势,如分支管理、速度、分散式特性、数据保障和开源属性。还介绍了Git的基本操作,如配置、暂存、提交、分支和远程仓库的管理。此外,文章指导读者如何在码云上创建和管理仓库,并提供了详细的Git命令教程。
摘要由CSDN通过智能技术生成

linus
在这里插入图片描述

他就是linus 肯定有人问他是谁 下面我就来讲讲他的故事

在1991年时,Linus开发出了Linux系统,当时的Linux是开源的,所以当时Linux发展非常的迅速,全世界很多热心的程序员都纷纷为Linux添砖加瓦,这么多人给Linux写代码,这些代码如何管理的呢?事实上,在2002年之前,这些热心的程序员都是通过diff的方式把源代码文件发送给Linus,最后Linus手动将代码合并起来。这样看来,非常的复杂。那么为什么不把代码放在当时的cvs和svn这些集中式的版本管理系统呢?因为Linus坚决反对这种速度慢,而且还需要联网的版本管理系统。

不过,到了2002年之后,代码实在太多了。Linus也撑不下去了,所以无奈之下找了一个商业的版本控制系统BitKeeper,但是BitKeeper的老板还是有点魄力的,直接授权Linux免费使用他们的系统。

但是好景不长,在2005年,Linux社区里的一位大牛,开发Samba的Andrew试图去破解BitKeeper的协议,其实不止他一个人这么干过,结果就是被BitKeeper公司发现了,结果可想而知。在此期间,Linus其实是可以挽回的,但是可能由于Linus江湖气息很重,一直没有道歉。

更加出人意料的事情就来了,Linus随后花了两周的时间用C写了一个分布式版本控制系统,它就是Git。一个月之内,Linux的代码就交给了Git来管理!
看完这个故事,相信大家对于大佬有个定义了,也许这就是大佬吧!
当然这个之后,我们熟知的Github也在2008年正式上线,无数的开源项目蜂拥而至,也让GitHub成为了全球最大的程序员社区
git的优点
1.分支和合并
真正使它从几乎所有其他 SCM 中脱颖而出的 Git 功能是它的分支模型。

Git 允许并鼓励您拥有多个可以完全相互独立的本地分支。这些开发线的创建、合并和删除只需几秒钟。这意味着您可以执行以下操作:
1.无摩擦上下文切换。创建一个分支来尝试一个想法,提交几次,切换回你分支的地方,应用补丁,切换回你正在试验的地方,然后合并它。
2.基于角色的代码行。拥有一个始终只包含用于生产的分支,另一个将工作合并到其中进行测试,以及几个较小的用于日常工作的分支。
3.基于特征的工作流程。为您正在处理的每个新功能创建新分支,以便您可以在它们之间无缝地来回切换,然后在该功能合并到主线时删除每个分支。
4.一次性实验。创建一个分支进行试验,意识到它不会工作,然后删除它 - 放弃工作 - 没有其他人看到它(即使你在此期间推送了其他分支)。
2.小而快
Git 很快。使用 Git,几乎所有操作都在本地执行,这使它在经常必须与某处服务器通信的集中式系统上具有巨大的速度优势。
Git 是为在 Linux 内核上工作而构建的,这意味着它从一开始就必须有效地处理大型存储库。Git 是用 C 编写的,减少了与高级语言相关的运行时开销。从一开始,速度和性能就是 Git 的主要设计目标。
3.分散式
任何分布式 SCM(包括 Git)的最佳特性之一就是它是分布式的。这意味着不是对源代码的当前提示进行“检出”,而是对整个存储库进行“克隆”。
多个备份
这意味着即使您使用集中式工作流程,每个用户基本上都拥有主服务器的完整备份。在发生崩溃或损坏的情况下,这些副本中的每一个都可以向上推以替换主服务器。实际上,除非存储库只有一个副本,否则 Git 不会出现单点故障。
4.数据保障
Git 使用的数据模型确保了项目每一部分的加密完整性。每个文件和提交都会在检出时通过其校验和进行校验和检索。除了您放入的确切位之外,不可能从 Git 中得到任何东西。也不可能更改 Git 存储库中的任何文件、日期、提交消息或任何其他数据,而不更改其后所有内容的 ID。这意味着如果您有一个提交 ID,您不仅可以确保您的项目与提交时完全相同,而且其历史记录中没有任何更改。
5.免费开源
Git 在GNU 通用公共许可证 2.0 版下发布,这是一个 开源许可证。Git 项目选择使用 GPLv2 来保证您共享和更改自由软件的自由——以确保该软件对其所有用户都是免费的。
但是,我们确实限制使用术语“Git”和 徽标以避免混淆。有关详细信息,请参阅我们的商标政策。
优点总之太多太多下面我们就来学习这些命令
话不多说,上图
概念
在这里插入图片描述
打开文件的隐藏目录你就会看到.git啦
全局配置

1.git config --global user.name “nameVal” 配置用户名
2.git config --global user.eamil “eamil@qq.com” 配置邮箱
说实话这个命令不常用
添加到暂存盘

git add my.txt 添加my.txt到暂存盘(my.txt自己定义的)
git add *.txt 添加.txt后缀的所有文件到暂存盘
git add . 添加所有文件到暂存盘 ?
从暂存盘恢复
删除的文件也能恢复哦 前提是之前上传更新过哦(是不是很强)

git checkout xxx 恢复暂存盘的xxx文件
git checkout . 恢复所有文件
添加到版本库

先修改
git add . 添加到暂存盘
查看版本库

git log 查记录
git reflog 查看所有记录版本
切换版本

git reset --hrad 24584 这里的24584就是查看版本的时候前面的代码为了区分不同的版本号
git reset --hard HEAD^ ^代表上个版本 ^^上上个版本
分支

git branch xiaowang 创建xiaowang 分支
git checkout xiaowang 切换到xiaowang分支
git checkout -b dev 创建并切换dev分支
git merge 分支名称 合并分支 (可能会有错误)
远程相关命令

git remote add origin xxx.git 本地添加远程仓库
git push -u origin master 创建并推送master分支到远程(第一次使用)
git push -f origin master 强制推送本地master分支到远程(不得已使用)
git push origin -all 推送所有分支到远程
git push origin master 普通推送到远程
git clone xxx.git 把远程仓库复制到本地
git pull origin master 把远程的master 拉去到本地
下面进入史诗级教学
1.进入码云网址 注册登录 https://gitee.com/
2.新建仓库
在这里插入图片描述
第二步按图
3在这里插入图片描述
3.win+r 输入cmd
在这里插入图片描述
上面4个命令依次输入创建(根据不同情况输入)
再次之前一定要切换到根目录执行 git init 初始化

开发者(由管理员邀请进入开发)
在这里插入图片描述
如果您还有什么问题 可以私聊哦 会尽快回复的

HTML 2686 字数 75 段落
新增投票功能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值