git和github的基本入门
1.git和github的基本概念
git:
-
Git是一个免费、开源的版本控制软件
-
版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况的系统。
-
系统具体功能:记录文件的所有历史变化、随时可以恢复到如何一个历史状态、多人协作开发或修改、 错误恢复
-
版本控制工具应该具备的功能:协同修改、数据备份、版本控制、权限控制、历史记录、分支管理
-
版本控制工具:
集中式版本控制工具:svn(单点故障)
分布式版本控制工具:Git
github:
-
Github是全球最大的社交编程及代码托管网站
-
目的:借助github托管代码
-
概念:
-
仓库(Repository)仓库用来存放项目代码,每个项目对应一个仓库,多个开源项目对应多个仓库。
-
收藏(Star)收藏项目,方便下次查看
-
复制克隆项目(Fork)从别人的仓库复制一份代码到自己的仓库中,项目独立存在但是可以保留项目来源
-
发起请求(Pull Request)根据项目来源,向其发送一个请求,等待项目源端确定是否合并
-
关注(Watch)关注项目,当项目更新可以接收到通知
-
事务卡片(Issue)发现代码BUG,但是目前没有成型代码,需要时讨论
-
Github主页藏好创建成功或点击网址栏github图标进入github主页,该页左侧主要显示用户动态以及关注仓库的动态,右侧显示所有的git功能。
-
仓库主页 仓库主页主要显示项目信息,如项目代码、版本、收藏/关注/fork情况等
-
个人主页 个人信息、头像、个人简介、关注我的人、我关注的人、我关注的git库、我的开源项目、我贡献的开源项目等信息。
-
-
注册github账号
-
官方网址:github.com
-
点击logo:登录状态进入github主页;未登录状态进入GitHub网站首页
-
sign up注册:填写基本信息step1:username–>email address–>password–>create an account
-
选择免费版本step2:choose free–>continue
-
用户调查,直接跳过step3:skip this step
注意:
1、github的服务器在国外,首页访问表较慢或无法访问
2、私有仓库只能自己或者指定的朋友才有有权限操作
3、新注册的用户必须验证邮箱后才可以创建git仓库
-
-
创建仓库/创建新项目
若是qq邮箱收不到邮件,收到请忽略,设置qq邮箱白名单
1、打开qq邮箱,点击设置
2、点击反垃圾
3、点击设置域名白名单
4、输入github.com,点击添加域名白名单
-
通过git管理git库,一个git库(仓库)对应一个开源项目
create a new repository–>repository name–>description–>private–>initialize this repository with a readme–>create repository
-
仓库管理
创建文件add file–>create new file–>edit new file -->preview–>commit new file–>commit new file
点击文件名,到文件详情页可以做删除和修改动作
点击描述可以查看文件提交详情信息
搜索文件go to file
快捷键T可以直接跳转到搜索文件
-
github issues
作用:发现代码BUG,但是目前没有成型代码,需要讨论时用;或者使用开源项目出现问题是使用
情景:张三发现李四开源git库,则提交一个issue;李四隔天登录在github主页看到通知并和张三交流,最后关闭issue。
-
基本概念实战
Repository、Star、Fork、Pull Request、Watch、Issue
开源项目贡献流程
1)新建Issue 提交使用问题或者建议和想法
2)Pull Request
步骤:
1、fork项目
2、修改自己仓管的项目代码
3、新建 pull request
4、等待作者确认和合并
-
git的安装和使用
目的:通过git管理github托管项目代码
下载安装
1)Git官网下载:https://www.git-scm.com/download/win
2)双击安装
3)选择安装路径
4)选择组件
5)开始菜单目录
6)选择使用命令行环境
7)以下三步默认next
8)等待安装
9)检验是否安装成功
2.git命令的使用
-
git的基本工作流程
Git工作区域
工作区(Working Directory)添加、编辑、修改文件等动作
暂存区暂存已经修改的文件最后统一提交到git仓库中
Git Respository(Git仓库)
git命令:
1、查看当前文件的状况:git status
2、将文件从工作区添加到暂存区:git add hello.php git add test.php
3、查看当前文件的状况:git status
4、将文件从暂存区添加到Git Repository:git commit -m"提交描述"
5、查看当前文件的状况:git status
-
git初始化和仓库创建的流程
基本信息设置
1、设置用户名
git config --global user.name ‘ShenJinyong’
2、设置用户名邮箱
git config --global user.email ‘438217638@qq.com’
该设置在github仓库主页显示谁提交了该文件
初始化一个新的Git仓仓库
1、新建文件夹 mkdir scoialexamination
2、在文件内初始化git(创建git仓库)
cd scoialexamination
git init
向仓库中添加文件
创建文件 touch a1.php
修改文件 vi a1.php
I进行输入
Tab完成
:wq保存
删除文件
1、删除文件rm -rf a1.php
2、从Git中删除文件git rm a1.php
3、提交操作 git commit -m ‘描述’
Linux命令:
ls查看党建文件
pwd当前工作目录
clear清楚记录
git config --list查看信息
-
git管理远程仓库
使用远程仓库的目的
作用:备份,实现代码共享集中化管理
Git克隆操作
目的
将远程仓库(github对应的项目)复制到本地
代码
git clone 仓库地址
git push提交到远程仓库
-
使用github pages搭建个人网站
个人站点
访问
https://用户名.github.io
搭建步骤
1) 创建个人站点 ---->新建仓库(注:仓库名必须是[用户名.github.io])
2) 在仓库下新建index.html
Project Pages项目站点
https://用户名.github.io
搭建步骤
1) 进入项目主页,点击settings
2) 在seetings页面,点击【Launch automatic page generator】来自动生成主题页面,新版在readme里面
3) 新建站点基础信息设置
4) 选择主题
5) 生成网页
3.git指令集合
-
第一次使用Git,需设置署名和邮箱:
$ git config --global user.name "用户名“
$ git config --global user.name “电子邮箱”
将代码克隆clone到本地,并交由Git来管理:
$ git clone url
url值需要克隆的地址
向本地的代码仓库添加当前目录的改动:
$ git add
只添加某个文件:
$ git add -p
p指的是具体文件名
查看现在的状态
$ git status
设置签名:
项目级别/仓库级别
git config user.name ***
git config user.email ***
系统用户级别
git config --global user.name ***
git config --global user.email ***
cd ***进入某一文件夹内
git status查看状态
git rm --cached ***撤销刚才的文件上传
git add ***把文件从工作区提交到暂存区
git commit 把文件从暂存区提交到本地库
按i健进入编辑模式提交信息
git reset head ***返回到没有暂存的情况
git commit -m “提交的信息” ***
git log查看历史版本记录
多屏显示控制方式:
空格向下翻页
b向上翻页
q推出
git log --pretty=oneline将一次修改显示在一行
git log --oneline只显示部分的hash值
git reflog显示索引值
git reset --hard ***基于索引值操作
git rm ***删除文件
ll 查看文件列表
git diff *** 将工作区中的文件和暂存区中的文件比较差异
git diff 比较多个文件
git branch -v查看所有分支
git branch *** 创建一个分支
git checkout ***切换到某一分支(tab可以补全)
合并分支:
第一步:切换到接受修改的分之上(被合并,增加新内容)git checkout ***
第二步:执行merge命令
git merge ***
解决冲突:
第一步:编辑文件、删除特殊符号
第二步:把文件修改到满意的成都,保存退出
第三部:git add ***
第四步:git commit -m “日志信息”
注意:此时commit你不要带文件名
git remove -v查看别名
git remote add orgin 地址 给地址起别名
git push origin ***将本地仓库推送到远程仓库
git pull origin *** 将远程仓库推送到本地仓库