Github使用与背景知识(Git与建立自己的Github仓库)

Git是什么

Git是一个开源的分布式版本控制系统,由Linus Torvalds为更好管理Linux内核开发而设计,让开发者与项目团队能更好地协同工作,在github上提供了一个Git代码的托管服务。1

Git的特点:2

  1. 保存文件修改记录。进行开发的时候,在本地可以保存我们代码,然后上传到服务器中。

  2. 标记版本号,便于区分。每次和服务器交互时都会提交一些修改的代码,git会为每一次提交生成版本号,用这个版本号来进行区分每一次的提交。这个版本号在git当中会使用一个hash值进行唯一区分;这个hash函数使用的是sha1(不仅git使用这个sha1生成hash值,一些著名的软件,如redis、lua等也是使用sha1产生hash值)。

  3. 提供历史版本记录。协同开发的时候,产生的每次提交都会在git上保存有历史版本信息,根据历史版本信息可以追溯到具体代码提交;以及当代码出现bug时可以根据历史版本锁定bug位置。
    可还原到历史指定版本。当代码出现bug时,可以还原到历史指定的版本。

  4. 对比版本差异。使用git diff工具进行比较文件差异

Github是什么

Github是基于Git的在线托管平台,现在是微软旗下公司。Github为开发者们的Git仓库提供托管服务,同时提供社区功能,让用户们可关注其他用户、点赞项目(star)、下载克隆项目(clone)、对项目代码提出改进建议(fork)。

Github使用

进入Github官网(https://github.com),选择Sign in(注册),完成个人信息注册后登录。

(tips: 1. Github与国内连接不稳定,有时需使用科学上网工具,2. 个人信息中username请谨慎填写<可能会陪伴你很久……>)

Github仓库创建:1

登录Github账户后,选择页面左上角菜单栏,然后选择 New (新建仓库)。

可参考:

建立仓库

选择填写以下内容:
建立仓库时的配置

(tips:README文件一般用来让用户介绍该仓库的内容与使用方法)

接着选择右下角Create repository(创建仓库)。

Git与Github绑定

创建仓库后,需要自己本地的电脑克隆一个库,方便将代码同步到Github上的仓库,为此需要先安装git工具。

在Linux上安装 git:

如果在ubuntu或者Debian系统:

1
sudo apt-get install git

如果在CentOS或者Fedora系统:

1
sudo yum install git

在Windows上,则需要使用Git fow windows软件,来帮助用户使用命令行工具(Git Bash)来执行Windows应用于访问Winodows文件。此外,Git Bash还拥有着使用SSH进行远程操作的能力。

在Git官网(https://git-scm.com/downloads
下载对应的Windows版本,依次点击下一步,最后弹出页面:

恭喜你安装完成!

页面中两项请打钩。

接着会打开一个Git Bash终端

GitBash窗口

Git常用命令:

一些常用命令

获取到Git工具后,需要完成Git与Github的绑定

获取ssh密钥

关于ssh的介绍可以参考:https://ivel-li.github.io/2024/11/25/ssh概述

在windows中刚打开的Git Bash中(或者linux的终端中):

1
cd ~/.ssh

如返回 “no such file or directory” 表明电脑没有ssh key,需要创建ssh key;

在终端输入

1
ssh-keygen -t rsa -C "在这里输入你的GitHub账户"

连续三次回车(Enter)后,终端会显示:1

你的ssh key保存位置

找到上述路径的文件夹,里面存有ssh的两个密钥,id_rsa为私钥,id_rsa.pub为公钥。

用记事本打开id_rsa.pub文件,复制里面的全部内容。

你的ssh密钥

与Github仓库绑定

找到你的个人账户的Settings,接着进入SSH and GPG keys项目。

你的ssh密钥

选择新建密钥。

新建ssh密钥

填写title并粘贴刚才复制的公钥,接着点击下方的Add SSH key,完成绑定。

输入密钥

在Git bash中输入

1
ssh -T git@github.com

接着输入yes,如果输出如下则表示绑定成功。

输入密钥

接下来是简单的配置环节:

gitname最好与github账户名字相同,git邮箱有github账户的邮箱。

1
2
git config --global user.name “gitname”
git config --global user.email “git邮箱”

至此,完成与Github仓库的绑定。

Github简单使用

  1. Git clone:将库克隆到本地,方便上传代码。

进入自己刚才新建的库的我也,点击 <> Code,复制网址。

输入密钥

在本地选择的存储位置,右键选择Git Bash Here:

本地目录下打开GitBash

输入:

1
git clone 刚才复制的网址

接着发现本地选择的目录下已经保存了我们的库。

  1. 上传代码

我们尝试在本地新建一个For_test.txt文件,并上传到Github仓库,并为其添加备注

输入密钥

可以观测到github上我们的文件已经上传成功:

Github上传成功

Git push常用语法为:

1
git push <远程仓库名> <分支名>

此处的远程仓库名是什么,分支是什么

分支一般为协同开发时不同开发者分别上传的内容,在初始化Git仓库时,Git默认已创建一个master(也叫main)的分支。

远程仓库一般直接写为origin,直接代表本地文件夹相对应的远程仓库

  1. 拉取文件

常用命令为

1
git pull <远程仓库名> <分支名>

从远程仓库获取代码并合并本地版本。

1
git pull origin master:brantest

将远程仓库origin的master分支拉取过来,与本地的brandtest分支合并。

参考:

- [1] https://blog.csdn.net/black_sneak/article/details/139600633
- [2] [https://blog.csdn.net/Long_xu/article/details/139724137]