git与github从入门到精通
1.了解Git和Github
1.1 什么是Git
Git是一个免费、开源的版本控制软件
1.2 什么是版本控制系统
版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况得系统。
- 系统具体功能
记录文件的所有历史变化
随时可恢复到任何一个历史状态
多人协作开发或修改
错误恢复
1.3 什么是Github
Github是全球最大的社交编程及代码托管网站(https://github.com/)。
Github可以托管各种git库,并提供一个web界面(用户名.github.io/仓库名)
1.4 Github和Git是什么关系
Git是版本控制软件
Github是项目代码托管的平台,借助git来管理项目代码
1.5 为什么学习github
学习优秀的开源项目
关注行业前辈了解最新的行业动态
如:
PHP 鸟哥,前新浪总架构师 https://github.com/laruence
国内最流行的PHP开发框架(thinkphp):https://github.com/top-think/thinkphp
全球最流行的PHP框架(laravel):https://github.com/laravel/laravel
PHP编码规范(FIG-PHP):https://www.gitbook.com/book/jifei/php-fig-standards/details
2.使用Github
2.1 目的
借助github托管项目代码
2.2 基本概念
仓库(Repository)
仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目则有多个仓库
收藏(Star)
收藏项目,方便下次查看
复制克隆项目(Fork)
脚下留心:该fork的项目时独立存在的
发起请求(Pull Request)
关注(Watch)
关注项目,当项目更新可以接收到通知
事务卡片(Issue)
发现代码BUG,但是目前没有成型代码,需要讨论时用;
Github主页
账号创建成功或点击网址导航栏github图标都可进入github主页:该页左侧主要显示用户动态以及关注用户或关注仓库的动态;右侧显示所有的git库
仓库主页
仓库主页主要显示项目的信息,如:项目代码,版本,收藏/关注/fork情况等
个人主页
个人信息:头像,个人简介,关注我的人,我关注的人,我关注的git库,我的开源项目,我贡献的开源项目等信息
2.3 注册github账号
官方网址
github.com
脚下留心
- 因为github在国外服务器所以访问较慢或者无法访问,需要翻墙(Shadowsocks)
- 私有仓库只能自己或者指定的朋友才有权限操作(私有仓库是收费的)
3、新注册的用户必须验证邮箱后才可以创建git库仓库()
2.4 创建仓库/创建新项目
说明
一个git库(仓库)对应一个开源项目
通过git管理git库
创建仓库
1)点击【Start a project】创建一个仓库
2)问题:点击【Start a project】创建一个仓库,后出现该页面
2)原因:未验证邮箱,点击下图框框中的链接进行验证
3)点击【resend】发送邮件验证邮箱
4)点击【verify email address】验证邮箱
说明:验证成功后会自动跳转github主页,重新点击【Start a project】即可创建仓库
5) 验证邮箱后,点击【Start a project】进入下图界面
仓库主页说明
脚下留心
qq邮箱需要设置白名单才可以收到邮件
︴未验证邮箱提示页面
︴设置QQ邮箱白名单
- 打开QQ邮箱、点击【设置】
2、点击【反垃圾】
3、点击【设置域名白名单】
4、在新页面的input框中输入【github.com】添加即可
2.5 仓库管理
新建文件
仓库主页,点击【create new file】创建仓库文件
编辑文件
仓库主页,点击【需要修改的文件】进入文件详情页
删除文件
︴思考被删除文件如何查看信息
答案:点击commits按钮查看
上传文件
搜索仓库文件
多学一招:快捷键(t)
下载/检出项目
2.6 Github Issues
作用:发现代码BUG,但是目前没有成型代码,需要讨论时用;或者使用开源项目出现问题时使用
情景:张三发现李四开源git库,则发提交了一个issue;李四隔天登录在github主页看到通知并和张三交流,最后关闭issue
2.6 基本概念(实战操作)
Github主页
个人主页
收藏(Star)
【如何收藏】
操作:打开对应项目主页,点击右上角 star 按钮即可收藏
情景:张三无意访问到李四的开源项目感觉不错并进行收藏
【如何查看自己得收藏】
关注(Watch)
情景:张三关注了李四的项目,李四添加项目文件,张三的github主页会有怎样的展示?
复制克隆项目(Fork)
情景:张三fork了李四的项目,相当于张三复制了李四的项目,所以自己也单独有了一个一样名称的仓库(注:该仓库会声明来自于李四,但是独立存在)
︴验证:fork后的仓库是否单独存在
发起请求(Pull Request)
情景:张三修改了fork的项目中的文件,希望更新到原来的仓库,这时候他要新建一个pull request
1)Git1 发起一个更新请求
2.7 开源项目贡献流程
- 新建Issue
提交使用问题或者建议或者想法
- Pull Request
步骤:
- fork项目
- 修改自己仓库的项目代码
- 新建 pull request
- 等待作者操作审核
3.Git安装和使用
目的
通过git管理github托管项目代码
下载安装
- GIt官网下载:https://www.git-scm.com/download/win
2)双击安装
3)选择安装的工作目录
- 选择组件
- 开始菜单目录名设置
- 选择使用命令行环境
- 以下三步默认,直接点击next
8)等待安装
- 检验是否安装成功
4.Git基本工作流程
Git工作区域
向仓库中添加文件流程
5.Git初始化及仓库创建和操作
基本信息设置
1. 设置用户名
git config --global user.name 'itcastphpgit1'
2. 设置用户名邮箱
git config --global user.email '485434609@qq.com'
脚下留心:该设置在github仓库主页显示谁提交了该文件
初始化一个新的Git仓库
- 创建文件夹
- 在文件内初始化git(创建git仓库)
cd test
git init
向仓库添加文件
touch a1.php # 创建a1.php文件到工作目录
git add a1.php # 添加a1.php到暂存区
git commit -m '第一次提交文件' # 添加a1.php到仓库
修改仓库文件
删除仓库文件
6. Git管理远程仓库
使用远程仓库的目的
作用:备份,实现代码共享集中化管理
Git克隆操作
目的
将远程仓库(github对应的项目)复制到本地
代码
git clone 仓库地址
多学一招:仓库地址由来
将本地仓库同步到git远程仓库中
git push
︴思考:为什么无法同步
或没有权限
The requested URL returned error: 403 Forbidden while accessing
答案:私有项目,没有权限,输入用户名密码,或者远程地址采用这种类型:
vi .git/config
# 将
[remote "origin"]
url = https://github.com/用户名/仓库名.git
修改为:
[remote "origin"]
url = https://用户名:密码@github.com/用户名/仓库名.git
7.Github Pages 搭建网站
个人站点
访问
https://用户名.github.io
搭建步骤
- 创建个人站点 -> 新建仓库(注:仓库名必须是【用户名.github.io】)
- 在仓库下新建index.html的文件即可
脚下留心
- github pages 仅支持静态网页
- 仓库里面是.html文件
3、个人主页也可以设置主题
Project Pages 项目站点
访问
https://用户名.github.io/仓库名
原理
gh-pages 用于构建和发布
搭建步骤
- 进入项目主页,点击settings
- 在settings页面,点击【Launch automatic page generator 】来自动生成主题页面
- 新建站点基础信息设置
- 选择主题
- 生成网页
git与github从入门到精通相关推荐
- Git版本控制软件结合GitHub从入门到精通常用命令学习手册
GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...
- Git及Github之入门到进阶
一言以蔽之, 所谓Git,一款免费.开源的分布式版本控制系统:所谓Github,用Git做版本控制的代码托管平台.一张图来说明代码提交者.Git与Github之间的关系: 以下主要分以下几个阶段来对G ...
- Git让你从入门到精通,看这一篇就够了!
简介 Git 是什么? Git 是一个开源的分布式版本控制系统. 什么是版本控制? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 什么是分布式版本控制系统? 介绍分布 ...
- 【转】Git版本控制软件从入门到精通学习手册
GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...
- Git版本控制软件从入门到精通学习手册
GIT 学习手册简介 本站为 Git 学习参考手册.目的是为学习与记忆 Git 使用中最重要.最普遍的命令提供快速翻阅. 这些命令以你可能需要的操作类型划分,并且将提供日常使用中需要的一些常用的命令以 ...
- Git和GitHub快速入门
Git入门 简介 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的分布式版本控制系统. 工具 准备工具 Git下载地址:https://git-scm ...
- GitHub从入门到精通
原文 http://www.eoeandroid.com/thread-274556-1-1.html [初识Github] 首先让我们大家一起喊一句"Hello Github". ...
- git 提交命令_工作总结:Git的学习和使用,最详细的Git教程,从入门到精通
前言 Git简介 实用主义 深入探索 总结 参考资料 前言 Git 是程序员学习和工作都离不开发工具,今天和大家分享 Git 常用命令总结. Git简介 Git 是一种分布式版本控制系统,它可以不受网 ...
- Git 和 GitHub 快速入门
Git & GitHub 的快速上手 文章目录 Git & GitHub 的快速上手 一.Git和版本控制的概念 (1) 集中式版本控制工具 (2) 分布式版本控制工具 二.Git的安 ...
最新文章
- 防火墙认证的类型——Vecloud
- 2020-12-22 一些有用的开源软件
- 11 单线程+多任务异步协程 爬虫
- mysql快速导入5000万条数据过程记录(LOAD DATA INFILE方式)
- 前端学习(1959)vue之电商管理系统电商系统之通过路由加载分类参数
- 解决:Truncated incorrect DOUBLE value: xxxX-1‘
- XGBoost的安装与介绍
- 在Linux下使用iconv转换字符串编码
- 从0开始架构一个IOS程序——03 — -分包用添加pch全局引用文件
- 微信皮肤css,微信小程序实现皮肤功能(夜间模式)_婳祎_前端开发者
- 基于Servlet的MVC模式用户登录实例
- 【网络信息安全】Web 安全
- 蓝桥杯 BASIC-5 基础练习 查找整数
- OpenCV自动内存管理
- SQL Server 2012安装错误案例:Error while enabling Windows feature: NetFx3, Error Code: -2146498298...
- 程序员应具备的素质[转帖]
- nicelabel java_EditPlus
- 广联达只有土建打不开_广联达BIM钢筋算量为什么打开工程是灰屏?工程打不开怎么办?...
- sql查询表名、列名、列属性
- 帝国cms 多值字段在投稿表单中的样式设置