版权声明:原创不易,本文禁止抄袭、转载,侵权必究!

本次教程建议一边阅读一边用电脑实操

目录

    一、了解Git和Github

      • 1.1 什么是Git

      • 1.2 什么是版本控制系统

      • 1.3 什么是Github

      • 1.4 Github和Git是什么关系

      • 1.5 为什么学习github

    二、使用Github

      • 2.1 目的

      • 2.2 基本概念

      • 2.3 注册github账号

      • 2.4 创建仓库/创建新项目

      • 2.5 仓库管理

      • 2.6 基本概念(实战操作)

      • 2.7 开源项目贡献流程

    三、Git安装和使用

      • 3.1 目的

      • 3.2 下载安装

      • 3.3 Git基本工作流程

      • 3.4 Git初始化及仓库创建和操作

      • 3.5 提交本地项目到远程

    四、Git管理远程仓库

      • 4.1 远程仓库使用目的

      • 4.2 Git克隆操作

      • 4.3 GithubPages 搭建网站

      • 4.4 公众号代码主题样式设置

    五、作者Info

coding-real mind writing-genuine heart

作者:Maker陈    本文字数:3.3k    阅读+实操时长≈1小时    

 

一、了解Git和Github

1.1 什么是Git

Git是一个免费、开源的分布式版本控制工具,与之相反的是Svn集中式版本控制工具

1.2 什么是版本控制系统

版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况的系统

系统具体功能

  • 记录文件的所有历史变化

  • 随时可恢复到任何一个历史状态

  • 多人协作开发或修改

  • 错误恢复

1.3 什么是Github

GitHub是全球最大的社交编程及代码托管网站(https://github.com),与之类似的还有GitLab、gitee;Github可以托管各种git库,并提供一个web界面(用户名.github.io/仓库名)

1.4 Github和Git是什么关系

Git是版本控制软件,Github是项目代码托管的平台,借助git来管理项目代码

1.5 为什么学习github

  • 学习优秀的开源项目
  • 关注行业了解最新的行业动态

  • 与软件开发团队进行项目合作

例如学习pygame项目 - 一个2d游戏开源引擎:

https://github.com/pygame


二、使用Github

2.1 目的

借助github托管项目代码

2.2 基本概念

仓库(Repository)

仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库

收藏(Star)

收藏项目,方便下次查看

复制克隆项目(Fork)

发起请求(Pull Request)

关注(Watch)

关注项目,当项目更新可以接收到通知

事务卡片(Issue)

发现代码BUG,但是目前没有成型代码,需要讨论时用

Github主页

账号创建成功或点击网址导航栏github图标都可进入github主页:该页左侧主要显示用户动态以及关注用户或关注仓库的动态;右侧显示所有的git库

仓库主页

仓库主页主要显示项目的信息,如:项目代码,版本,收藏/关注/fork情况等

个人主页

个人信息:头像,个人简介,关注我的人,我关注的人,我关注的git库,我的开源项目,我贡献的开源项目等信息

2.3 注册github账号

(官方网址:https://github.com)

注意:

  • 因为github在国外服务器所以访问较慢或者无法访问,需要FQ或vpn

  • 私有仓库只能自己或者指定的朋友才有权限操作(私有仓库是收费的),如公司的软件开发项目一般都是私有仓库

  • 新注册的用户必须验证邮箱后才可以创建git库仓库()

2.4 创建仓库/创建新项目

说明:一个git库(仓库)对应一个开源项目,通过git管理git库

创建仓库

(1) 点击【Start aproject】创建一个仓库

(2) 问题:点击【Start aproject】创建一个仓库,后出现该页面

(2) 原因:未验证邮箱,点击下图框框中的链接进行验证

(3) 点击【resend】发送邮件验证邮箱

(4) 点击【verifyemail address】验证邮箱

说明:验证成功后会自动跳转github主页,重新点击【Start a project】即可创建仓库

(5) 验证邮箱后,点击【Start a project】进入下图界面

仓库主页说明

注意:qq邮箱需要设置白名单才可以收到邮件,当然如果你有其他邮箱,如阿里邮箱、腾讯邮箱等就不需要设置白名单

设置QQ邮箱白名单

1、打开QQ邮箱、点击【设置】

2、点击【反垃圾】

3、点击【设置域名白名单】

4、在新页面的input框中输入【github.com】添加即可

2.5 仓库管理

新建文件

编辑文件

仓库主页,点击【需要修改的文件】进入文件详情页

删除文件

查询修改文件的信息(包括上传、删除、修改等操作)

上传文件

搜索仓库文件

下载/检出项目

2.6 基本概念(实战操作)

GitHub主页

个人主页

点击【You profile】即可进入个人主页

收藏(Star)

点击star即可收藏,如下图:

如何查看自己得收藏,点击【 You stars】,即可进入收藏页面,如下图:

关注(Watch)

复制克隆项目(Fork)

发起请求(Pull Request)

你如果修改了fork的项目中的文件,希望更新到原来的仓库,这时候你要新建一个pull request

2.7 开源项目贡献流程

1)新建Issue:提交使用问题或者建议或者想法

2)Pull Request,步骤:

  • fork项目

  • 修改自己仓库的项目代码

  • 新建 pull request

  • 等待作者操作审核


三、Git安装和使用

3.1 目的

通过git管理github托管项目代码

3.2 下载安装

以下三步默认,直接点击next,之后等待安装,检验一下安装成功与否:

3.3 Git基本工作流程

Git工作区域

3.4 Git初始化及仓库创建和操作

基本信息设置

1 设置用户名
2 git config --global user.name 'you name'
3
4
5 设置用户名邮箱
6 git config --global user.email 'you email'

目的:可以在对github项目操作时显示是谁操作过此项目,便于软件开发流程

初始化一个新的Git仓库

1、创建文件夹

2. 进入该文件的根目录,单击右键,选择【Git Bash Here】,输入如下代码:

初始化成功会出现一个.git文件夹,如上图所示

向仓库添加文件并提交到暂存区

1 touch test.py                         # 创建test.py文件到工作目录
2
3 git add test.py # 添加test.py到暂存区(单个提交)
4
5 git commit -m '第一次提交文件' # 添加test.py到仓库

如果想把本地的所有文件放到暂存区,可输入如下命令:

1 git add .

查看修改状态

假如你修改了文件,包括增、删、改,需要查看一下修改过哪些文件,可输入如下命令:

1 git status

红色的部分表示你操作过哪些文件,而在上面我们增加了一个TXT文件

删除仓库文件

注意:增加、删除、修改文件等操作我们可不用命令执行,可以手动在本地操作然后把操作过程提交到远程(github/gitlab/gitee)就行,当然也可根据你自己的喜好来决定

3.5 提交本地项目到远程大致流程:

 1 git branch                  #查看当前所有分支
2 git branch -b 分支 #创建分支
3 git branch checkout 分支 #切换分支
4
5 git status #查看修改所有文件状态
6 git add ./[file] #增加指定修改文件或者所有文件到暂存区
7 git commit -m '备注提交目的' #提交目的备注
8 git pull origin master #拉取项目,这一步通常是别人也在同一分支进行操作时,要push必须先pull
9 git push origin master/[其他分支] #把暂存区的文件推送到远程仓库
10 git merge/rebase origin master #如果你需要把当前分支合并到master分支可执行此操作
11 git reset --hard 版本号 #当操作错误时回退至指定的版本

注意:github默认主分支是main,如果想修改成master,可先在右上角头像那里点击【Settings】,在点击【Repositories】,如下图所示:


四、Git管理远程仓库

4.1 远程仓库使用目的

作用:备份,实现代码共享集中化管理

4.2 Git克隆操作   

目的:将远程仓库(github对应的项目)复制到本地

代码如下:

克隆仓库地址由来:

这上面有两种方式,https和ssh,一般克隆项目时采用的是https方式,要使用ssh连接必须要配置密钥,这样可实现无密连接,无需验证信息,即可实现本地与远程仓库的同步,这非常方便,我一般使用的是此种方式,会在后面教程中介绍,敬请期待

4.3 GithubPages 搭建网站

个人站点设计原则:https://用户名.github.io

搭建步骤

(1)创建个人站点   ->  新建仓库(注:仓库名必须是【用户名.github.io】)

(2)在仓库下新建index.html的文件即可

注意:

  • github pages仅支持静态网页

  • 仓库里面是.html文件

  • 个人主页也可以设置主题

4.4 公众号代码主题样式设置

推荐一个网站:http://md.aclickall.com

此网站可以给你的代码编辑框添加主题,支持Markdown语法,写完代码之后直接点复制就可以把代码连同样式主题一块复制到微信公众号里面了,更符合审美,当然你也可以用插件,不过本人觉得这样更方便,万一你是在别的电脑进行编辑,岂不是又要下载一遍插件。如下图,非常方便,只需点复制就行【注意:不要手动按快捷键Ctrl +C复制哦,要点击下图所示的复制按钮才能把主题样式复制成功】

复制之后,微信公众号代码主题样式如下所示:

腾讯官方给出的这个代码编辑样式确实有点丑了,哈哈哈,如下所示:

更多网络爬虫、算法、游戏开发、Web开发、数据分析、开源工具等请关注本人原创公众号【小鸿星空科技

阅读原文


五、作者Info

作者:南柯树下,Goal:让编程更有趣!

原创微信公众号:『小鸿星空科技』,专注于算法、爬虫,网站,游戏开发,数据分析、自然语言处理,AI等,期待你的关注,定期分享技术博客!

版权声明:本文禁止抄袭、转载 ,侵权必究!


更多网络爬虫、算法、游戏开发、Web开发、数据分析、AI、开源工具等请关注本人原创公众号【小鸿星空科技】,期待你的关注,定期分享技术博客!


——  ——  ——  ——  —  END  ——  ——  ——  ——  ————

         欢迎扫码关注我的公众号

          小鸿星空科技

       

生活不止苟且,还有代码和远方!

1小时学会Git玩转GitHub的更多相关文章

  1. 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 ...

  2. 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 ...

  3. 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 ...

  4. 学会Git玩转Github

    1. 了解Git和Github 1.1 什么是Git Git是一个免费.开源的版本控制软件 1.2 什么是版本控制系统 版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况得系统. ...

  5. 学会git玩转github,结尾有惊喜!有惊喜!有惊喜!

    一.什么是Github Github是全球最大的社交编程及代码托管网站(https://github.com/). Github可以托管各种git库,并提供一个web界面(用户名.github.io/ ...

  6. 学会Git玩转GitHub全

    我这个笔记是利用HTML5来写的,所以我现附上代码以及并上照片:  当下@future 2019/4/29 19:55:33 <!DOCTYPE html><html> < ...

  7. 学会Git玩转Github笔记(二)——Git使用

    一.Git基本工作流程 Git工作区域 向仓库中添加文件流程 二. Git初始化及仓库创建和操作 基本信息设置 . 设置用户名 git config --global user.name 'itcas ...

  8. 学会Git玩转Github笔记(一)——Github基本概念 & 仓库管理

    一.github基本概念 使用目的:借助GitHub托管项目代码 1.仓库(Respository) 2.收藏(Star) 3.复制克隆项目(Fork) :分叉—你开源了一个项目,别人想在你这个项目基 ...

  9. 学会Git玩转Github笔记(三)—— Github Pages 搭建个人网站

    https://help.github.com/categories/github-pages-basics/ 一.个人站点 访问 https://用户名.github.io 搭建步骤 1) 创建个人 ...

随机推荐

  1. 期望 概率DP

    期望 \(x\) 的期望 \(E(x)\) 表示平均情况下 \(x\) 的值. 令 \(C\) 表示常数, \(X\) 和 \(Y\) 表示两个随机变量. \(E(C)=C\) \(E(C \time ...

  2. Nginx(一):初识Nginx

    一.什么是Nginx? Nginx 是异步框架的Web服务器,也可以用作反向代理.负载平衡器和HTTP缓存.选择Nginx的一些优点:可以高并发连接.内存消耗少.成本低廉.配置文件简单.节省带宽.稳定 ...

  3. 一个C#开发搭建Android框架的心路历程

    前言 Java框架实在是太多了,因为是初学乍练,所以,只好以百度为标准选择框架了. Java的框架文章太难写了,因为他引用了太多框架,而没一个框架都有很繁琐的配置,把每个框架都写一遍,就等于写书了:所 ...

  4. linux 蓝牙开发调试(rtl8821cs模块)

    刚调完rtl8821cs的wifi功能,项目需要打通蓝牙配网功能. 调试过程中遇到各种问题中间几乎放弃,倒腾了几天最后还是打通了,顺便记录下过程. 通信接口:SDIO @WiFi.Uart @BT;工 ...

  5. Codeforces Round #735 (Div. 2)

    这次的cf依旧掉分..... A题和B题在不懈死磕下瞎搞出来了,不过还是被C题卡住了... C. Mikasa 简述题意就是给定n和m,让n^0,n^1,n^2...,n^m,求着m+1个数中没有出现 ...

  6. nohup java -jar xx.jar & ,关闭窗口后退出进程

    nohup java -jar dw-report..jar > dw-report.log  & 自动退出命令在后台运行 xx.jar程序 明明已经加了"&" ...

  7. zabbix web管理页面 中文乱码问题

    1.在自己电脑上找下图文件,C:\Windows\Fonts 2.上传到 /usr/share/zabbix/assets/fonts/ 目录下 可以看到 graphfont.ttf 是 /etc/a ...

  8. WPF进阶技巧和实战09-事件(1-路由事件、鼠标键盘输入)

    理解路由事件 当有意义的事情发生时,有对象(WPF的元素)发送的用于通知代码的消息,就是事件的核心思想.WPF通过事件路由的概念增强了.NET事件模型.事件由允许源自某个元素的事件由另一个元素引发.例 ...

  9. Mac卸载go

    1.删除go目录 一般目录是 /usr/local/go sudo rm -rf /usr/local/go 2.清除环境变量配置 3. mac安装go后自动创建的问题也需要删除 sudo rm -r ...

  10. storm启动报错: InvalidTopologyException(msg:Component: [mybolt] subscribes from non-existent stream: [default] of component [es-bolt])

    storm每一个bolt在emit之后需要把数据传递到下一个bolt,所以declareOUtputFields 一定要写 默认的情况下不用加streamId,如果加了streamId,后面的bolt ...