Git完整版操作教程

GitFlow

  • GitFlow 是团队开发的一种最佳实践,将代码划分为以下几个分支

在这里插入图片描述

  • Master 主分支。上面只保存正式发布的版本

  • Hotfix 线上代码 Bug 修复分支。开发完后需要合并回Master和Develop分支,同时在Master上打一个tag

  • Feather 功能分支。当开发某个功能时,创建一个单独的分支,开发完毕后再合并到 dev 分支

  • Release 分支。待发布分支,Release分支基于Develop分支创建,在这个Release分支上测试,修改Bug

  • Develop 开发分支。开发者都在这个分支上提交代码

初始配置

第一次使用Git的时候,会要求我们配置用户名和邮箱,用于表示开发者的信息
在这里插入图片描述

1.初始邮箱地址

用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变。

每次commit都会用用户名和邮箱纪录。

github的contributions统计就是按邮箱来统计的

git config --global user.name “username”

git config --global user.email “email”

在这里插入图片描述

2.查看用户名和邮箱

git config user.name

git config user.age

在这里插入图片描述

3.源地址查看修改

npm get registry

查看镜像源

npm config set registry http://www.npmjs.org

切换官方源

npm config set registry http://registry.npm.taobao.org

切换淘宝源

git基本操作

git基本操作命令

git init

  • 版本状态查看

  • 红色说明文件位于工作区

  • 绿色说明文件位于暂存区

  • 没有体现,说明位于版本区域

214714da1567706aad25e92ca8bdb33f.png

06700725b737716eba99fed299ef4ae8.png

git status

70301a633c29058aa123442a1405803e.png
ea559e92931535421253595f0c0b332f.png

git add . | git add * | git add -A | git add 文件名

  • 将文件加到暂存区

  • 单个文件添加

eac897a2025bd23e191f6543e5fdf6a5.png

  • add . 方式

1e51e046a75b3008c827ce85ee363086.png

  • -A方式
    e176dcce7ff77359f05ce2dbc15c7794.png

git commit -m ‘注释信息’’

  • 提交到仓库,m是message的简写
注释提交规范
  • chore: 项目初始化

  • feat/Added: 增加新功能

  • fix/Fixed: 改bug

  • style: 样式修改

  • test: 部署测试环境

  • docs:文档(documentation)

00ba3a83f503604f1f6accf67a3fd5e4.png

git restore

  • 可以丢弃工作区的改动

比如我改动了工作区的代码
55144a40f4b64518b909bcba3362adc6.png

然后我又通过restore放弃了修改,此时还是之前的版本
在这里插入图片描述

git restore --staged

  • 可以取消暂存

  • 新增文件
    d994bb9d21b9b4378be4a59abe098827.png

git diff

  • 查看工作区与暂存区的差异(不显示删除或新增文件) 显示做了哪些修改

2aefa3aa7e313c19d26f8cfe77968122.png

  • 新增文件,不能显示
    9ccf70f4db651a155f2285446eddd2c7.png

  • diff解读

901f9186330477badcd9a3c3e9aa6ac1.png

git diff --cached

  • 查看暂存区与仓库的差异

b21a3689334df04b0929b6e849348396.png

历史版本回滚

git log

  • 默认不用任何参数的话,git log
    会按提交时间列出所有的更新,最近的更新排在最上面。每次更新都有一个 SHA-1
    校验和、作者的名字 和 电子邮件地址、提交时间,最后缩进一个段落显示提交说明。

7a2d982fb83798f24cfb8c7a79ee9a3b.png

git log --oneline

如果内容偏多, 需要使用方向键上下滚动, 按 q 退出

git log 命令有一个选项,可以用来更改仓库信息的显示方式。该选项为 --oneline.

  • 每行显示一个 commit

  • 显示 commit 的 SHA 的前 7 个字符

  • 显示 commit 的消息

0d7cf4f9f5eb476d9d85b05a07439fdb.png

根据版本号进行回退

版本回退,只是本地的。不会影响git库中的内容

进行版本回退时,不需要使用完整的哈希字符串,前七位即可

版本切换之前,要提交当前的代码状态到仓库

git reset --hard xxxxxx7

5f0211905f7e252a769f92189c4b85cc.png

git reflog

如果在回退以后又想再次回到之前的版本,git reflog
可以查看所有分支的所有操作记录(包括commit和reset的操作),包括已经被删除的commit记录,git
log则不能察看已经删除了的commit记录

e12eca4e50e38705e3588c50d672e863.png

  • git log 和git log --oneline已经读取不到

ef9506f5ce362a1c243b6bf8d477bc19.png

其它回滚

git reset --hard HEAD^

  • 回滚到上个版本

3e53647b862873c4a7de0bf2265727bd.png

git reset --hard HEAD^^

  • 回滚到上上个版本

git reset --hard HEAD~100

  • 回滚到100个版本之前

配件忽略文件 .gitignore

仓库中没有提交该文件

1.忽略一个文件

16a560ca9ff46e41b7b88624d89e835e.png
a2d5ee97d92df32f1f94ba12d3aea95f.png
87091cbe2a4fd158d1abe002d877ef85.png

2.忽略全部以什么结尾的文件

4e625f13ad82e94e9a73bc56805428de.png
b1d5b8e9f33dec44102fab8508cce2ce.png

3.忽略一个文件夹

4b2499f3f3041013d9d2b853418628b8.png
959787eca7eeaa51f39980fb00a4ba5d.png

仓库中已经提交该文件

1.已经加入到版本库,版本库删除该文件

没有文件夹的状态是因为我这里创建的是一个空的文件夹
4b31350b90db6a67bed6ab056c5e0b30.png

2.然后在.gitignore 中配置忽略

文件夹的状态也要忽略,因为上面的实验文件夹是空的
e2f7f6525a9b152da9f70c880ac89d8c.png

3.add 和 commit 提交即可

1975082052d2ac26e45b19f34f783d64.png
)]

git分支

分支是 Git 重要的功能特性之一,开发人员可以在主开发线的基础上分离出新的开发线

git branch 分支名

  • 创建一个分支

d50c43ca2c3341f0d43919f518799ab9.png

git branch

  • 查看分支

cc3d14fdbb840b3d691e5aac35f787d8.png

git checkout -b 分支名

  • 切换并且创建分支

  • 注意: 每次在切换分支前 提交一下当前分支
    682601a0318693b17729ff558c6b42a6.png

git checkout 分支名

  • 注意: 每次在切换分支前 提交一下当前分支

  • 切换分支
    在这里插入图片描述

git merge 分支名

  • 合并分支

  • 一般是在dev分支去合并其他子分支上的代码

解决冲突
  • 当多个分支修改同一个文件后,合并分支的时候就会产生冲突。冲突的解决非常简单,将内容修改为最终想要的结果,然后继续执行
    git add 与 git commit 就可以了。

  • 切记修改完冲突之后要git add 和 git commit
    7804f3009555aa6ef18d87dfc35873f0.png

在这里插入图片描述

git branch -d 分支名

在这里插入图片描述

github

GitHub 是一个 Git 仓库管理网站。可以创建远程中心仓库,为多人合作开发提供便利

基础使用

本地有仓库

1.注册激活账号
2.创建github中心仓库

在这里插入图片描述

3.获取仓库地址

在这里插入图片描述

4.git remote add 别名 HTTPS/SSH
  • 本地配置远程仓库地址
    在这里插入图片描述
    0d89743c60737769ecc28888bc2be554.png
5.git status
  • 本地提交(提交前确定代码已经提交到本地仓库)
    在这里插入图片描述
6.git push -u origin master
  • 第一次推的时候需要加u,u表示保存这个关联,以后直接push就行

在这里插入图片描述

  • 推送之前检查git status
    在这里插入图片描述

adacaa48b08589a006b34d115509ea2c.png

7.检查远程仓库

在这里插入图片描述

8.将本地仓库某个分支推送到仓库
  • 方法同主分支推送

  • 注意推送之前检查git status
    7274458a7fdd9f36fae80e721da34c5b.png
    4d675c03f8bc6a5f458f85a65e73adde.png

  • 查看远程仓库,已经多了rolls分支

在这里插入图片描述

本地没有仓库

1.注册并激活账号
2.克隆仓库

在这里插入图片描述

在这里插入图片描述

3.进入克隆好的仓库
  • 克隆在文件夹里面,一定要进入仓库

在这里插入图片描述

4.增加和修改代码提交本地仓库

在这里插入图片描述

5.git push

在这里插入图片描述

c20d97a4d2d81a07c033480127fd8fc6.png

451c15badbdfd086493b71b3cebfff76.png

6.检查远程仓库同步状态

在这里插入图片描述

git fetch origin rolls:rolls
  • 拉取本地没有的分支
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

配置SSH

1.ssh-keygen -t rsa -C email

  • 创建密匙

  • 配置SSH,任意位置打开输入代码邮箱,

在这里插入图片描述

2.然后三次回车

在这里插入图片描述

3.找地址

在这里插入图片描述

4.id_rsa.pub

在这里插入图片描述

在这里插入图片描述

5.将.pub配置到github中

在这里插入图片描述

e50d94ba51b6ed020326f5fdf8209f0f.png

  • 更改为txt
    在这里插入图片描述

556b9ab593c3a30d4c25696295a96c24.png

在这里插入图片描述

在这里插入图片描述

06.验证SSH绑定成功\

  • 不再需要密码

在这里插入图片描述

07-git clone url(SSH)

在这里插入图片描述

  • 输入yes

在这里插入图片描述

在这里插入图片描述

常见提示

在这里插入图片描述

$ git添加。

警告:LF将被a.js中的CRLF替换。

该文件将在您的工作目录中具有其原始行结尾

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值