GitHub和Git的使用

一、Git

1.Git概念

一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型地项目。

  • 集中化版本控制系统:这类系统都有一个单一的集中管理的服务器,保存所有文件的修订版本。而协同工作的人们都通过客户端连接到这台服务器,获取最新的文件或者提交更新。储存版本之间地差异。如:SVN

  • 分布式版本控制系统:客户端不仅仅是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。储存当前版本和以前版本地所有索引。如:Git

2.Git简史

林纳斯·本纳第克特·托瓦兹创立

林纳斯·本纳第克特·托瓦兹_百度百科 (baidu.com)

3.Git安装

https://www.bilibili.com/video/BV1Zz4y1C7vg?from=search&seid=15784007729827817772

一个B站的视频,讲的很详细,适合和我一样的小白看。

4.Git的本地结构

工作区 ---git add---> 暂存区 ---git commit---> 本地库

5.代码托管平台

1)代码托管中心的任务:帮我们维护远程库。

2)代码托管中心种类:局域网环境下(搭建GitLab服务器作为代码托管中心,需要自己搭建)、外网坏境下(GitHub或Gitee不需要自己搭建)

3)本地库和远程库的交互方式

①团队内部协作:

GitHub使用-团队内部协作

pull和clone的区别:

clone是本地没有repository时,将远程repository整个下载过来。

pull是本地有repository时,将远程repository里新的commit数据(如有的话)下载过来,并且与本地代码merge。相当于fetch(抓取操作,将远程库的内容下载到本地,没有更新工作区数据)和merge(合并)操作。

②跨团队协作:

GitHub使用-跨团队协作

6.具体操作命令(与Linux命令一样)

命令 功能
git --version 查看Git版本
clear 清屏
git config --global user.name "Jerry_jing" 设置用户名
git config --global user.email "123456789@qq.com" 设置邮箱
git init 本地仓库初始化
git add 将文件提交到暂存区
git commit -m"注释" “文件名” 将暂存区的内容提交到本地库
git status 查看工作区和暂存区状态
git log(分页效果,空格下一页、B上一页) 查看从近到远的提交日志
git log --pretty=oneline 展示日志,每个版本一行
git log --online 展示日志,更加简洁
git reflog 展示日志,多了HEAD@
git reset --hard <索引数> 前进或后退历史版本,本地库的指针移动的同时,重置暂存区,重置工作区。
先rm <文件名>,再git add,再git commit 删除工作区文件,同步到暂存区,同步到本地库
git diff <文件名> 比对工作区和暂存区文件的差异
git diff 比对工作区和暂存区所有文件的差异
git diff<历史版本><文件名> 比对暂存区和工作区文件的差异

git log:当历史记录过多时,有分页效果。空格下一页、B上一页。

Linux的几个命令

二、重要概念

1.分支

在版本控制中,使用多条线同时推进多个任务。这里所说的多条线,就是多个分支。

一般新的独立的功能开辟一个新的分支。

2.操作分支

命令 功能
git branch -v 查看分支
git branch <新分支名> 创建分支
git checkout <分支名> 切换分支
先切换到master分支,后git merge<分支名> 将某个分支合并到master分支中

三、GitHub

1.步骤

注册GitHub ---> 创建远程仓库 ---> 将本地库的文件推送到远程库

2.操作

命令 功能
git remote -v 查看别名
git remote add <别名> <仓库地址> 在本地创建远程库地址的别名,方便访问
git push <仓库地址> --delete <分支名称> 删除远程分支
git clone <远程库地址> 克隆操作

fork、pull request操作直接在GitHub中点击即可。

posted @ 2021-01-30 01:44  Jerry_京  阅读(52)  评论(0)    收藏  举报