Linux环境下使用Git把代码上传到云端

🌈个人主页:Yui_

🌈Linux专栏:Linux

🌈C语言笔记专栏:C语言笔记

🌈数据结构专栏:数据结构

🌈C++专栏:C++

文章目录

  • [1. Git的由来](#1. Git的由来)
  • [2. 为什么要使用Git](#2. 为什么要使用Git)
  • 3.如何再Linux下使用Git
    • [3.1 安装](#3.1 安装)
    • [3.2 git的工作流程](#3.2 git的工作流程)
    • [3.3 使用教程](#3.3 使用教程)

1. Git的由来

为了更加便捷的管理linux的代码,Torvalds在直到 2005 年 4 月, 一直使用 BitKeeper(BK)管理着一个庞大的 Linux 内核源码,这些源码来自于完全不同的志愿者开发团队。虽然BitKeeper是一个闭源的付费商业公司,但是对于Linux社区却是免费开放使用,直到 BK 的创始人 Larry McVoy 与一个 Linux 开发人员就不恰当地使用 BK 发生了争执。

2005 年,一位 Linux 开发成员 Andrew(Samba 协议之父)写了一个可以连接 BitKeeper 仓库的外挂,因此 BitMover 公司(BitKeeper 持有者)认为他反编译了 BitKeeper。BitMover 决定中止 Linux 免费使用 BitKeeper 的授权。最终 Linux 团队与 BitMover 磋商无果,Torvalds 决定开发自己的版本管理系统。

从 Torvalds 的声明 到 Linux 邮件列表,都是关于他计划利用一个工作"假期"来决定如何为 Linux 找到新的 VCS,很明显,他喜欢 BK,并对 Linux 不能再使用它而感到沮丧,而且他对竞争并不敢兴趣。如之前提到的,这次假期诞生了 Git。Torvalds 将它命为 Git 的原因有很多种说法,但实际上他只是喜欢这个词,这是他从披头士的歌曲《I'm So Tired》(第二节)中获得灵感。

2. 为什么要使用Git

假设张三是一名快要毕业的大学生,为了能偶顺利毕业张三肯定需要好好写他的毕业论文。于是他就写啊写,写啊写终于写完了!张三迫不及待地就去找老师让老师帮他看看写的怎么样,张三觉得应该没问题,可是这个老师很喜欢挑刺,就对张三说:写的什么东西啊,这不对,那不对,字体,行间距全不对,就让张三回去再好好修改一下,于是张三就赶紧回去改把改,但是张三可没有备份的习惯,改完后张三又跑去让老师看看自己的论文,老师皱了皱眉,还是不满意,让张三回去再改,就这样又经历了几次,老师有点不耐烦了,对张三说:怎么还越改越差了呢,还不如第2次的,于是啊,老师就建议张三把第二次的论文作为终稿,这下张三蒙了,他哪里还有第二次的稿啊,他可没有备份啊。于是张三崩溃了。。。

接下来小明登场,小明是张三的室友,张三的事迹给了小明警示,自己可不能像张三那样,于是它就对自己的论文进行了管理,于是诞生了以下内容:

c 复制代码
毕业论文_初稿.doc
毕业论文_修改1.doc
毕业论文_修改2.doc
毕业论文_修改3.doc
毕业论文_完整版1.doc
毕业论文_完整版2.doc
毕业论文_完整版3.doc
毕业论文_最终版1.doc
毕业论文_最终版2.doc
毕业论文_死也不改版.doc

这就是使用最原始的方式进行版本控制,但是这种方式有显著缺点:

  • 多个文件,保留所有版本时,需要为每个版本保存一个文件。
  • 协同操作,多人协同操作时,需要将文件打包发来发去。
  • 容易丢失,被删除意味着永远失去...(可以选择网盘)
    为了解决以上版本控制存在问题,应运而生了一批版本控制工具:VSS、CVS、SVN、Git等,其中Git应该属于绝对霸主地位。

3.如何再Linux下使用Git

3.1 安装

要使用git就必须先安装git才行,下面是安装指令:

shell 复制代码
 sudo yum install -y git

安装完后检查是否安装成功:

shell 复制代码
git version

3.2 git的工作流程

远端仓库->本地仓库->暂存区->工作目录:文件可以依次"检出",也可以直接从远程仓库"检出"到工作目录。
工作目录->暂存区->本地仓库->远程仓库:文件必须一步步的提交。

3.3 使用教程

  1. 创建仓库
    本文采用的远端仓库为gitee,github的操作也差不多。

我填写的内容大家按自己的要求填就可以了,没填的地方就可以不填。

接下来点击克隆然后复制链接。

  1. 将仓库克隆到本地

指令:

shell 复制代码
git clone [链接]

通过进入文件夹可以看出确实是有内容的:

再观察隐藏文件可以看到:

那么我们就可以看到有一个【.git】的东西被显示出来,其实它就是我们从远端克隆下来的那个仓库,其实通俗点说它就是一个【目录/文件夹】

  1. Git的三板斧
    git add
    格式:将当前目录下的所有文件添加到暂存区
shell 复制代码
git add .

仓库克隆到本地之后,我们就可以将自己的代码托管到这个仓库中了

首先进行的就是add,也就是将当前目录下所有文件添加到暂存区(Stage)

git commit

格式:

shell 复制代码
git commit -m "日志"

接下去进行的就是commit,是提交的意思。把我们修改的内容(暂存区)提交到本地仓库

非第一次提交会是这个画面:

如果你是第一次提交会提示你,输入邮箱和用户名。

在命令行输入邮箱和用户名就可以了,
注意 :一定要与你在gitee里的一致,否则可能没有绿点。

那我要怎么查看我确实是将这些东西提交到仓库中了呢?

⭐:git log ----> 查看日志

⭐:git status -----> 查看当前状态

git push

格式:

shell 复制代码
git push

最后要进行的就是push,将本地仓库中保存的内容推送到远程仓库,让本地仓库和远端仓库保持一致.

为什么要推送到云端呢?

如果你有两台电脑,一台在家,一台在公司。你又是一个爱好写代码的程序员,在公司写了一天不过瘾,回家还想写,可是你在公司的代码都在本地啊,这时候提前把代码推送到云端就很重要了,在家把云端的代码一拉,又可以写代码了。

因为你是第一次把代码推送到云端,需要提供用户名和密码才可以

输入完后,就可以在gitee里看到自己的代码了:

如果要删除仓库的话,进入要删除的仓库,右上角有个管理的选项,点击后找到删除就可以了

相关推荐
海阔天空_2013几秒前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
桥田智能3 分钟前
气爪在自动化装配线中是如何应用的?
运维·自动化
QAQ小菜鸟11 分钟前
一、初识C语言(1)
c语言
何曾参静谧26 分钟前
「C/C++」C/C++ 之 变量作用域详解
c语言·开发语言·c++
Elastic 中国社区官方博客27 分钟前
如何将数据从 AWS S3 导入到 Elastic Cloud - 第 3 部分:Elastic S3 连接器
大数据·elasticsearch·搜索引擎·云计算·全文检索·可用性测试·aws
九河云27 分钟前
如何选择适合的AWS EC2实例类型
服务器·云计算·aws
互联网打工人no130 分钟前
每日一题——第一百二十一题
c语言
掘金-我是哪吒37 分钟前
微服务mysql,redis,elasticsearch, kibana,cassandra,mongodb, kafka
redis·mysql·mongodb·elasticsearch·微服务
Mortal_hhh1 小时前
VScode的C/C++点击转到定义,不是跳转定义而是跳转声明怎么办?(内附详细做法)
ide·vscode·stm32·编辑器
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器