Github

目录

简介

Github访问加速

配置Git

本地创建SSH Key

Github网站添加SSH Key

验证是否成功

配置个人信息

Github创建仓库

创建存储库

创建分支

分支内容修改并提交

打开拉取请求

合并拉取请求

本地仓库上传

配置

检出仓库

工作流

推送改动


简介

Github是一个基于git的代码托管平台,付费用户可以建私人仓库,而免费用户则只能使用公共仓库【代码公开】。

GitHub官网地址:GitHub

Github访问加速

如果访问GitHub访问不了,对于Windows用户可以通过给火狐浏览器安装“Github加速”或“Tiga - Github国内下载和克隆文件加速”拓展来访问GitHub,并注册账号。

如果还是不能正常访问Github网站,可以使用cdn加速的方法。通过修改系统hosts文件,绕过国内dns解析,直接访问Github的CDN节点,从而达到Github访问加速的目的。可以分为如下三个步骤来完成:

(1).在DNS查询平台里查询github.com、assets-cdn.github.com、github.global.ssl.fastly.net的DNS解析记录,复制查询结果中TTL值【DNS记录在DNS服务器上的缓存时间】不为0的记录里的IP。

一个DNS查询平台链接:

Dns检测|Dns查询 - 站长工具

(2).打开C:\Windows\System32\drivers\etc\hosts文件,在文件底部粘贴(1)中复制的那些IP,每个IP各占一行,IP后面接个空格,然后写上对应的域名。

示例:

52.69.186.44     github.com
185.199.111.153  assets-cdn.github.com
108.160.163.106  github.global.ssl.fastly.net

(3).保存修改后的hosts文件,刷新系统DNS缓存。

Windows系统下按快捷键Windows+X,在弹窗里选择“命令提示符(管理员)A”,运行命令:

ipconfig /flushdns

Centos系统里则是运行命令:

/etc/init.d/newwork restart

就可以刷新系统DNS缓存了。

如果以上方法还是不行,可以尝试重复一次以上三个步骤【重新选择Github cdn加速的DNS解析 IP】,如果还是不行,可以尝试使用镜像网站、转入Gitee加速等方法。Gitee是一种国内的Git托管服务,提供免费的Git仓库,和Github类似,Git初学者可以在Gitee上建立一个仓库,熟悉Git命令操作。

配置Git

本地创建SSH Key

先检查电脑是否已经有SSH Key。

Windows操作系统下通过“Windows开始菜单->所有程序->Git->Git Bash”来启动Git Bash客户端,运行命令:

cd ~/.ssh

ls

如果显示文件列表中没有id_rsa.pub或者id_dsa.pub文件,那么需要创建一个SSH Key。运行命令:

ssh-keygen -t rsa -C "在GitHub上注册账号所绑定的邮箱"

对于接下来的提示,可以一致按Enter键跳过,成功的话就会在当前用户目录下生成.ssh文件夹。Windows操作系统下的Administrator用户目录一般为C:\Users\Administrator\。

Github网站添加SSH Key

登录Github网站,点击顶部导航栏最右侧的头像图标,在展开的选项列表里点击“Your Profile”选项,在打开的页面里点击自己的用户头像就可以进入到个人账号信息设置页面。选择“SSH and GPG keys”,再点击New SSH Key,就会看到如下页面:

然后点开本地电脑里当前用户目录.ssh文件夹中的.pub后缀名文件,全选复制里面的内容粘贴到上图页面里的key文本域中,Title可以随便填。然后点击下方的“Add SSH Key”应该就能把本地电脑里Git软件生成的Key添加到Github网站上了。

验证是否成功

在Git Bash客户端里运行命令:

ssh -T git@github.com

如果在运行结果提示中看到“Are you sure you want to continue connecting(yes/no/[fingerprint])? ”就输入yes,然后回车【按Enter键】,如果看到新的提示信息里有“You’ve successfully authenticated,but Github does not provide shell access.”则表示本地电脑已成功连上Github。

配置个人信息

在将本地仓库上传到Github之前,需要设置好username和email,因为Github每次commit都会记录这些信息。

查看本地电脑里的Git软件是否已经配置了全局个人信息,命令示例:

git config --global --list

如果还没有配置Git个人信息,则需要手动配置。命令示例:

git config --global user.name "你的用户名称"

git config --global user.email 你的电子邮箱地址 

如果是针对项目的个人信息配置,那么去掉上面命令示例里的--global选项。

移除错误的全局配置项,例如user.emaik,命令示例:

git config --global --unset user.emaik

可以通过git config查看支持的命令列表。

Github创建仓库

创建存储库

存储库里可以包含项目需要的任何内容,建议在其中包含一个包含项目有关信息【如许可证】的README文件,这个文件可以在创建新存储库时添加。

登录Github网站,点击顶部导航栏右侧的+图标,在展开的选项列表里点击“new repository”选项,然后根据自己的实际需要来勾选选项。

示例图:

创建分支

在Github里,分支是一种同时处理不同版本存储库的方式。

默认情况下,存储库里有一个名为main的分支【主分支】,它被认为是最终分支。在将分支提交到main分支前需要对分支进行检测和修改。

当从main分支创建其它分支时,其实是在创建main分支的副本或快照,如果在对其它分支进行操作时,别人对main分支进行了修改,那么可以拉入这些更新。当完成对其它分支的修改后,可以合并其它分支到main分支。

打开Github里自己的存储库页面,点击文件列表顶部的下拉菜单“main”,输入新的分支名称后点击创建分支的按钮即可创建出新的分支。

示例图:

分支内容修改并提交

在Github里,保存更改被称为提交【commits】,每个提交都有一个关联的提交信息,用来解释为什么进行特定更改的描述。提交信息里会记录更改的历史记录,因此阅读提交信息就可以了解对应的提交所做的事情以及原因。

操作示例:在非main分支下,点击README.md文件,单击视图里的编辑按钮【像支铅笔的小图标】进行内容编辑,修改完内容后,在内容框下方填写更新文件标题和更新文件内容描述,再点击底部的“Commit Changes”按钮提交更改。注意因为这次不是在main分支下提交的,所以这时提交更新的README.md文件并不是main分支下的README.md文件。

示例图:

打开拉取请求

拉取请求是Github上协作的核心。当打开拉取请求时,可以提交自己的更改并请求别人审查和拉取这些更改,以及将这些更改合并到他们的分支中。拉取请求会显示来自两个分支的内容的差异,修改和增加的内容会以绿色背景显示,删除的内容则会以红色背景显示。

可以在拉取请求信息中使用Github的@mention系统,向特定人员或团队寻求返回。也可以在自己的存储库中打开拉取请求并自行合并【学习Github时练习用】。

示例图:

 

 

合并拉取请求

创建完拉取请求后,就可以将拉取请求里的内容合并到main分支了,合并成功后,就可以删除旧分支了,等到下次要提交新内容时就直接再创建新的分支【main分支的副本】,再确认提交内容,再创建拉取请求,再合并新内容到main分支。如果需要用到旧分支,还可以恢复旧分支。

示例图:

 

 

 

本地仓库上传

配置

进入要上传的仓库,Windows系统里鼠标右键单机,在出现的选项面板里选择“git bash”,添加远程地址配置。

示例命令:

git remote add origin git@github.com:yourName/yourRepo.git

命令中的yourName是指github里注册的用户名,而yourRepo则是github里创建的仓库名。

如果按如上命令添加远程地址配置时,报错“remote origin already exists”错误,那么就需要先清除旧的远程地址配置。

示例命令:

git remote rm origin

然后再添加远程地址配置。

想要检查配置项,可以运行命令:

git config --list

除了用指令修改配置外,也可以直接修改.git目录下的config文件来更改配置。

检出仓库

创建一个本地仓库的克隆版本:

git clone /path/to/repository

创建远端服务器上仓库的副本:

git clone username@host:/path/to/repository

要克隆的仓库中需要有.git目录,直接用git clone复制没有建立git仓库的项目目录会失败。如果想把项目目录改造成可以克隆的git仓库,需要先在源项目目录内通过git init生成git仓库,这时生成的git仓库其实是一个空仓库,同级目录下的源项目目录里的文件信息其实并没有提交到仓库中。因此在给源项目目录生成git仓库后,还需要将源项目文件做一次git提交,这样在克隆源项目仓库时才会把源项目文件也克隆下来,否则会只克隆一个空的git仓库【.git目录】。

工作流

本地仓库由三部分组成:

1.工作目录,存放有项目文件。

2.暂存区,保存临时改动的缓存区域。

3.HEAD,指向最后一次提交的结果。

选择一个项目目录,如果还没有建立git仓库则运行:

git init

Windows操作系统下在项目目录里鼠标右键单击,选择“Git Bash Here”

将文件添加到暂存区。

添加单个文件语法格式:

git add <filename>

可多次添加。

添加当前目录下除了.git目录外的所有文件到暂存区。

将暂存区文件提交到HEAD:

git commit -m "代码提交信息"

如果要提交的文件在上一次提交后没有做过修改,那么可能出现“nothing to commit,working tree clean”的提示。

如果本地分支和远程分支匹配不上,就会出现“error: src refspec feature does not match any”错误提示,可通过git branch -a查看本地分支,没有就创建。

推送改动

将本地仓库HEAD中的文件提交到远端仓库。

示例代码:

git push origin main

可以把main换成其它已创建的分支。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值