本文介绍Git软件与GitHub平台的基本内容、使用方法与应用场景等。

1 初步介绍

  首先,什么是GitHubGit?为什么我们要运用这些工具?

  首先从GitHub说起。如果大家参加过数学建模比赛,或许都经历过这样的历程:一个队伍若干人负责一篇文档的不同部分,而后最终交给一位同学汇总。这时候,由于不断地修改、完善内容,每个人的电脑中或许都出现了无数个名字类似于“第一部分1”“第一部分2”“第一部分3”“修改1”“修改2”等等这样的Word文档,这繁多的Word文件无疑给最终的版本合并过程带来了很多烦恼。而数学建模中的Word与我们毕业设计中的代码文件类似,也是需要不断更新。

  同时,上面所说的数学建模,往往只有3-4天的时间,因此Word文档再多也不会过于繁琐;而毕业设计不一样,从去年开始,再到现在,再到最终上交论文的4、5月份,这个时间跨度非常大,如果我们还采用上述这种“文件名称后加编号”的笨方法,可能最终的文件编号都要到三位数了;好滴,那我们不加编号了,直接在原有文件的基础上修改,又有新的问题出现了——如果我们在今天直接修改了前天所写的代码,并且保存文件退出了,可是随后发现今天的修改是有问题的,还是前天的那个版本比较正确,但是已经无法撤回,也不好再凭借记忆手动把修改的内容一一准确地重新调整为前天修改前的版本。因此,是不是很烦恼?

  那么,GitHub就可以解决这样的烦恼。GitHub很专业的介绍网上也有,大家百度就可以;况且我也不专业,所以就通俗的说:GitHub是一个可以管理同一个文件的不同版本的仓库。或许这么说不太清楚,看了下面一张表,相信大家就了解了:

  是的,你没有看错,每一个文件都与其对应的用户、时间与版本修改内容等一一对应,并且每一份文件都可以下载,从而轻松回溯版本。说白了,GitHub就是为了实现上述这一工作。而GitHub实现上述这一工作是基于线上平台的,换句话说其是一个实现这一目的的网站,而Git则是与GitHub相呼应的电脑软件;二者结合,从而实现利用Git软件将电脑中的代码文件上传至GitHub网页中。

  值得一提的是,Git并非是实现这一功能的唯一电脑软件,但其得到了广大程序员朋友的好评与大量运用。而国内也有类似GitHub的网站,例如码云Gitee等,与GitHub相比,速度和稳定性或许会更好,同时相信大家都是龙的传人、支持本土企业,因此大家都可以多多尝试。

2 使用方法

  一般的,GitHub的使用有两种方法,一是首先在GitHub网页中建立自己的文件,随后同步到本地电脑;二是首先在本地电脑中完成代码文件,随后同步到GitHub网页中。在这里我个人认为第一种方法比较方便,因此以第一种为例。

2.1 GitHub配置

  首先,我们登录GitHub官网:https://github.com/ 。注册账号后,点击屏幕左侧的“New”按钮,从而新建Repositories。这个Repositories就是大家代码等文件的存放之处。随后,为自己的Repositories取个名字、加一个简介,其他选项依照下图即可。

  完成后,大家就会看到在新建的Repositories中已经有了READMELicense文件。

  随后,在Repositories界面左上角的Code界面,依据下图依次选择,并复制对应的SSH备用。

2.2 Git配置

  首先,我们需要下载Git软件,随后安装即可;关于安装的具体方法,我们将在后续的博客中介绍。

  随后,我们选择一个合适的文件夹,在这里右键,选择“Git Bash Here”打开Git,输入代码:

git clone git@github.com:Chutj/Crop_Yield_Prediction_with_Machine_Learning.git

  在这里,clone后的代码需要替换成大家自己上面复制的SSH即可。

  随后,就可以发现,前述操作中生成的READMELicense文件都已经在本地文件夹中了。

2.3 代码上传至GitHub

  接下来,我们便可以进行代码版本管理与上传。在本地文件夹中写好代码,随后在这一文件夹中右击鼠标打开Git Bash

  以我的CropYield_DL_Old.py文件为例,输入代码:

git add CropYield_DL_Old.py

  随后输入:

git commit -m"Modify This File"

  其中,引号中的内容为文件修改备注,方便大家了解每一次文件修改的详细情况,具体内容可以自行修改。

  可以看到,文件修改的具体信息已经被列在代码下方。

  最后,输入代码:

git push

  即将我们刚刚修改的CropYield_DL_Old.py文件上传至GitHub中。

  至此,即完成了GitHubGit的简单操作。

  上述内容和互联网其他关于GitHubGit的操作教程相比,确实十分粗略——由于我不是专业的程序员,因此上述未涉及Git的高级操作(例如版本回溯)等,大家可以参照其他更深入的教程加以进一步学习。

初步上手Git软件及GitHub平台:基本操作方法的更多相关文章

  1. 版本控制简介,git使用----使用GitHub托管代码

    关于版本控制: 很久以前,人们苦于对写过的代码进行版本的管理,经常过了一段时间想恢复原来写过的代码却又忘了不知道丢到哪儿去了,有的人用加上时间后缀来命名文件的方法,便于后期维护,但是这样做的麻烦也很大 ...

  2. Git 系列(二):初步了解 Git

    在这个系列的介绍篇中,我们学习到了谁应该使用 Git,以及 Git 是用来做什么的.今天,我们将学习如何克隆公共 Git 仓库,以及如何提取出独立的文件而不用克隆整个仓库. 由于 Git 如此流行,因 ...

  3. Mac(OS X)中Git安装与GitHub基本使用

    GitHub是一个面向开源及私有软件项目的托管平台.开源代码库以及版本控制系统,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub.通常在Windows下使用GitHub的教程是非常 ...

  4. Sublime Text 中使用Git插件连接GitHub

    sublime Text的另一个强大之处在于它提供了非常丰富的插件,可以帮助程序员来适合大多数语言的开发.这些插件通过它自己的Package Controll(包管理)组件来安装,非常方便.一般常用的 ...

  5. git 本地代码到github

    一·什么是gitHub? 官网解释:gitHub是一个让无论处于何地的代码工作者能工作于同一个项目,同一个版本的平台.(GitHub is a code hosting platform for ve ...

  6. Git工具和GitHub的使用

    一.Git工具的安装 1)centos系统下安装 1.1)查看环境 [root@gitlab ~]# rpm -qa centos-release centos-release--4.1708.el7 ...

  7. 学习 Git 玩转 GitHub

    原文地址:学习 Git 玩转 GitHub 博客地址:http://www.extlight.com 一.基本了解 1.1 什么是版本控制系统 版本控制系统是一种记录一个或若干个文件内容变化,以便将来 ...

  8. ubuntu上建立本地git 和 网络 github的上传与下载

    github工具是一个很好用的工具,可以在本地建立一个git仓库,存储当前写的程序或者数据,然后通过ssh与github建立联系.具体怎么实现,下面进行介绍. 1.首先要安装git 软件 在Linux ...

  9. git 本地代码到github(转)

    git 本地代码到github   一·什么是gitHub? 官网解释:gitHub是一个让无论处于何地的代码工作者能工作于同一个项目,同一个版本的平台.(GitHub is a code hosti ...

  10. Git 之 与Github交互

    我们不可能只在一台电脑上开发,白天在公司用公司电脑,晚上在家可以用自己电脑.但是这个代码怎么让两台电脑同步呢?总不能用U盘复制粘贴.太繁琐. 这里我们就可以找个代码托管的平台,帮我们做这件事. Git ...

随机推荐

  1. win32com报错:无效的类字符串(Invalid Class String)

    异常:无效的类字符串 (Invalid Class String) . 使用python操作COM组件的朋友应该都碰到过,这个报错来自于python标准库pythoncom.win32com也是建立在 ...

  2. uniapp H5扫码解决方案

    JS通过webView调用本地相机扫码二维码,然后webView把二维码数据传给JS 网上找了一堆资料,都是JS传值给webView的,这里自己看了下代码,通过两个步骤实现此功能1,通过JS调用web ...

  3. freeswitch两个DTMF转换接口的区别

    概述 freeswitch支持三种模式的DTMF传输方式,分别时inband.INFO.2833. 在传统的PSTN网络中,所有的DTMF码都是inband模式,所以VOIP网络和PSTN网络对接中, ...

  4. lucene.net全文检索(二)lucene.net 的封装

    查询 public class LuceneQuery : ILuceneQuery { #region Identity private Logger logger = new Logger(typ ...

  5. 基于html5开发的Win12网页版,抢先体验

    据 MSPoweruser 报道,Windows 11虽然刚刚开始步入正轨,但最新爆料称微软已经在开启下一个计划,Windows 12 的开发将在 去年3 月份开始.德国科技网站 Deskmodder ...

  6. SV 接口中的clocking

    接口 module可以例化模块,可以例化接口 接口不能例化模块 采样和数据驱动 时钟驱动数据,数据会有延迟,RTL仿真的时候,不会仿真出这个延时;RTL仿真的时候,不会仿真出寄存器的延时;只有在门级仿 ...

  7. [转帖]解Bug之路-记一次JVM堆外内存泄露Bug的查找

    https://zhuanlan.zhihu.com/p/245401095 解Bug之路-记一次JVM堆外内存泄露Bug的查找 前言 JVM的堆外内存泄露的定位一直是个比较棘手的问题.此次的Bug查 ...

  8. [转帖]可能是最完整的 TCP 连接健康指标工具 ss 的说明

    https://blog.mygraphql.com/zh/notes/low-tec/network/tcp-inspect/ 写在前面 TCP 连接健康的重要性 如何查看 TCP 连接健康 容器化 ...

  9. [转帖]MySQL联合索引(复合索引)

    Mysql联合唯一索引添加相同数据插入报错 联合索引在两个字段都存在唯一,将报错. 1.添加联合索引 alter table "表名" add unique index(`字段1` ...

  10. [转帖]expect 实现 ssh免密登录的脚本

    expect 实现 ssh免密登录的脚本 #!/bin/bash #Author:cosann #Version:0.2 #date:2022/7/27 #description:批量部署SSH免密登 ...