*此次随笔分为两部分:前半部分讲解有关GitHub的,后半部分讲解有关Git的
使用GitHub
详情可参考:【教程】学会Git玩转GitHub
目录
- 目的
- GitHub涉及的基本概念
- 注册GitHub账号
- 创建仓库
- 项目主页
-
目的:借助GitHub托管项目代码
GitHub涉及的基本概念
- repository:仓库,用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库
- star:收藏,方便下次查看
- fork:复制克隆项目,但是要注意该fork项目是独立存在的,一旦复制,则独立存在,其改动不会影响被复制项目,同样被复制项目改动亦不会影响该fork项目
- pull request:发起合并请求,用于fork项目与被复制项目的合并,但是前提是被复制项目的作者同意合并请求方才可以合并
- watch:关注项目,一旦所关注的项目有任何更新,都可以收到通知
issue:事务卡片,当所浏览的代码有任何问题或疑惑时,可以发起事务卡片,发起之后,看到该项目的人,都可以参与到issue中,直到问题或疑惑解决,由任何一方关闭issue为止。
GitHub主页:登陆状态时,左侧为相关仓库动态,右侧为个人所有仓库信息
仓库主页:显示项目代码的具体信息及可操作项
个人主页:显示个人的相关信息注册GitHub账号
具体操作步骤:
- 进入官网
- 点击sign up
- 填写相关信息并完成邮箱验证即可
注意:
- 因为GitHub的服务器在国外(目前国内还没有),所以访问较慢甚至无法访问,需要时建议翻墙
- 在填写相关信息的step2时,有两个选项,第一个时免费无限使用公开的仓库(即任何人都可以访问和fork该仓库);第二个是私有仓库,不是所有人都有权限可以访问的,只有自己或者自己指定的朋友才有权限操作,但是是需要 收费的
新注册的用户必须验证邮箱后才可以创建Git仓库
创建仓库
注意
- 首次创建仓库需要验证邮箱才能创建仓库
- 如果使用的是QQ邮箱注册的,QQ邮箱需要设置将GitHub设置为白名单才可以收到邮件(操作步骤:进入QQ邮箱》进入设置》进入反垃圾》点击设置域名白名单》将GitHub的官网域名添加到白名单即可)
- 一个Git仓库对应一个开源项目,通过Git管理仓库
创建仓库时,有几个操作项,依次的中文意思为项目名称、项目的简单描述内容、项目为公有或私有项目(选择项)、是否创建说明文件用来描述仓库(说明文件固定命名为readme.md)
项目主页
- 点击edit可以修改项目描述
- 创建文件、上传文件、搜索仓库文件
- 关注、收藏、复制克隆项目
直接下载或者通过Git克隆
仓库管理
新建文件
新建文件需要填写的内容有文件名、文件内容、此次提交的备注信息(详略两项)
文件命名必须加上该文件的后缀格式、此次提交文件的备注信息一般写此次提交的原因或者目的以便其他开发者知道本次文件新建文件的主要内容编辑文件
在主页上点击文件名,可以跳转到文件详情页做删除或修改操作;
在主页上点击文件描述内容,可以查看该文件最近一次提交的详细信息
进入文件详情页后,点击编辑的图标,即可进入文件编辑模式
注意:重新提交文件依然需要填写此次文件提交的备注信息删除文件
与编辑文件类似,只是进入文件详情页后,点击的是删除文件的图标,同样,删除文件也需要填写删除文件的文件提交备注信息
查看已删除文件,可以在主页的commit中查看,即在提交记录中通过查看提交的历史记录来查看删除文件的提交记录,从而查看已删除文件的相关信息上传文件
点击主页的上传文件的按钮,进入上传文件界面,选择文件或者拖动文件到上传区域,填写提交的备注信息即可搜索仓库文件
点击主页上的find file的按钮,输入文件名称即可搜索;当然,也可以采用快捷键t实现快速搜索下载/检出项目
Git的使用
目录
- 目的
- Git的下载安装
- Git的工作流程
- Git在本地的初始化操作
- Git的本地化仓库操作
- Git管理远程仓库GitHub
-
目的:通过Git管理GitHub托管的项目代码
Git的下载安装
操作流程:进入官网》根据电脑类型选择相应版本点击安装即可。
注意:
- 由于直接从官网安装,可能会出现安装速度慢甚至安装不了,这里建议使用pandownload安装该软件。先百度搜索pandownload,然后安装该软件,在这个软件中搜索Git,安装即可(当然,这里安装的Git版本可能不是最新版本)
- 安装时,选择组件可以选择命令行或者图形界面,同时,建议选择Git自带的命令行环境
检验是否安装成功,返回电脑桌面,点击鼠标右键,如果有Git的相关图标,即安装成功
Git的工作流程
工作区域:- 工作区:可进行添加、编辑、修改文件等操作
- 暂存区:暂存已经修改的文件,最后同意提交到Git的本地仓库
- Git本地仓库:最终确定的文件保存到本地仓库中,成为该项目的一个版本,并且对其他人可见
工作流程:
工作区新建文件》通过命令行指令提交到暂存区》通过命令行指令提交到本地仓库
具体指令操作: - 工作区通过指令(git add 文件名)添加文件到暂存区
- 暂存区通过指令(git commit -m ‘指令描述’)添加文件到Git的本地仓库
查看通过指令(git status)查看该文件的状态
Git在本地的初始化操作
基础信息设置:- 设置用户名:git config --global user.name ‘用户名’
- 设置用户邮箱:git config --global user.email ‘邮箱’
- 查看设置通过指令(git config --list)
注意:git config --global参数,表示本地电脑上所有的Git仓库都会使用这个配置,当然,根据需要,也可以对某个仓库指定不同的用户名和邮箱(该设置表示在GitHub仓库主页显示谁提交了该文件)
Git的本地化仓库操作
- 新建仓库:
- 创建文件夹:通过指令(mkdir 文件夹名)或者直接新建文件夹即可
- 在文件内初始化Git:进入该文件夹,通过指令(git init)创建Git仓库
- 注意: 如果该操作没有任何显示,则表示本地电脑设置了隐藏部分格式文件; 更改设置方式: 打开该文件夹》点击查看》点击选项》点击查看》下拉菜单,勾选“显示隐藏的文件、文件夹和驱动器”
- 添加文件
- 创建文件:通过指令(touch 文件名)或者直接新建文件即可
- 提交文件到暂存区:通过指令(git add 文件名)
- 提交文件到本地仓库:通过指令(git commit -m ‘备注信息‘)
- 查看文件状态:通过指令(git status)
- 修改文件
通过指令(vi 文件名)进入文件,然后在文件中修改文件;或者通过指令(cat 文件名)查看文件内容亦可;注意:修改的文件提交时,同样需要先提交到暂存区,再提交到本地仓库 - 删除文件
- 删除文件通过指令(rm -rf 文件名)
- 在Git中删除文件通过指令(git rm 文件名)
- 提交本次删除文件操作通过指令(git commit -m ‘备注信息’)
注意:由于是命令行界面操作,涉及相关的文件命令行指令,具体可参考cd、ls等命令和vi模式切换
Git管理远程仓库GitHub
- 使用远程仓库的目的:备份,实现代码共享,集中化管理代码
- Git克隆操作目的:将远程仓库的代码(GitHub对应的项目)复制到本地,进入本地操作
- Git克隆操作具体流程
- Git克隆:通过指令(git clone 仓库地址)克隆对应仓库,仓库地址可以直接复制GitHub上的对应链接
- 在本地操作克隆的项目后,再重新将修改后的项目提交到本地仓库
- 将本地仓库同步到Git远程仓库:通过指令(git push)
注意:
解决git push错误(The requested URL returned error:403 Forbidden while accessing)
解决方法:该项目被默认为私有项目,本地操作的没有提交到远程仓库的权限,需要输入用户名密码,或者远程地址采用这种类型。
具体操作:
- 通过指令(vi .git/config)进入配置文件config中,将[remote “origin”] url = http://github.com/用户名/仓库名.git 修改为[remote “origin”] url = https://用户名:密码@github.com/用户名/仓库名.git
如果以上原B站教程所说的方式解决不了,建议参考ssh本地配置和本地缓存设置。 (其实,这些天,我在初始化Git也是遇到了不少麻烦,这些方面的错误提示具体我也不太懂,建议遇到了,就网上搜索一下相关解决方法吧。千万不要因为报错就放弃Git学习了,因为个人感觉,Git除了这个初始化有点麻烦,其他入门操作都挺简单的 。)
GitHub page搭建个人网站
- 个人站点搭建
搭建步骤:
- 创建个人站点:新建仓库(注意:仓库名必须是【用户名.github.io】)
- 在仓库下新建index.html即可(注意:仓库下只能有该文件,不可以有其他文件,这样个人站点才会默认打开该文件)
- page限制: page只支持静态网页,即不支持动态网页;同时仓库中只能为html文件,即其他诸如css、js等类型文件不支持( 这是原B站教程的说法,但是我后面查看了相关的信息,发现GitHub Pages实际上是可以采用Jekyll Github Pages的默认工具等方式来形成更美观的静态网站的,当然这些辅助工具自然不仅仅只有html文件了;同时,GitHub Pages也不仅仅只能做出静态网站,可以通过中间件之类的操作(具体怎么操作,笔者也不是特别清楚,主要是目前太菜了,也不知道怎么操作来着 )实现动态数据绑定。感兴趣的道友,可以直行去了解更多相关方面的内容 )
个人站点访问方式:https://用户名.github.io
- project pages项目站点搭建
搭建步骤:
- 进入项目主页,点击settings
- 在settings页面,点击【Launch automatic page genertor】来自动生成主题页面
- 新建站点基础信息设置
- 选择主题
- 生成网页(点击public page)
- 去除版权信息(点击分支gh_page,进入index.html,修改文件内容即可)
站点访问方式:https://用户名.github.io/仓库名
尾声:其实这个B站教程只是入门知识,而且可能是因为有点“年代”的缘故,所以导致部分内容与实际操作有所差异,比如我前些天刚开始搭建GitHub Pages时,就找不到教程提及的【Launch automatic page genertor】,也找不到gh_page分支(我怀疑是因为GitHub更新了版本,导致没有了该些操作键的缘故)。如果是深入学习,建议看多一点相关的知识,仅根据本入门学习是不太够的