Git 指南


1 Git 四个工作区域

工作区:工作区就是我们项目的目录。

在这里插入图片描述
本地仓库:工作区内的 .git 目录,是Git的版本库,存储了Git仓库的所有版本信息。
在这里插入图片描述
暂存区:暂存区域是一个文件,保存了下次要提交的文件列表信息,一般在 Git 仓库目录中。

远程仓库:例如Github就是远程仓库。



2 Git 基本工作流程:

  1. 在工作目录修改文件;
  2. 暂存文件,将文件快照放入暂存区;
  3. 提交更新,找到暂存区的文件,将快照永久性存储到到 Git 仓库区(本地);
  4. 将本地仓库的变更推送到远程仓库

在这里插入图片描述

# 工作区 -> 暂存区
git add <file/dir>

# 暂存区 -> 本地仓库
git commit -m "some info"

# 本地仓库 -> 远程仓库
git push origin master  # 本地master分支推送到远程origin仓库
# 工作区 <- 暂存区
git checkout -- <file>  # 暂存区文件内容覆盖工作区文件内容

# 暂存区 <- 本地仓库
git reset HEAD <file>   # 本地仓库文件内容覆盖暂存区文件内容

# 本地仓库 <- 远程仓库
git clone <git_url>        # 克隆远程仓库
git fetch upstream master  # 拉取远程代码到本地但不应用在当前分支
git pull upstream master   # 拉取远程代码到本地但应用在当前分支
git pull --rebase upstream master  # 如果平时使用rebase合并代码则加上


3 Git文件状态

在git中,文件主要有四种状态:
在这里插入图片描述
Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过 git add 状态变为Staged.

Unmodify(Committed): 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用 git rm 移出版本库, 则成为Untracked文件

Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过 git add可进入暂存staged状态, 使用 git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改

Staged: 暂存状态. 执行 git commit 则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行 git reset HEAD filename 取消暂存, 文件状态为Modified



4 分支

主干分支 master

主要负责管理正在运行的生产环境代码。永远保持与正在运行的生产环境完全一致。

开发分支 develop

主要负责管理正在开发过程中的代码。一般情况下应该是最新的代码。

bug 修理分支 hotfix

主要负责管理生产环境下出现的紧急修复的代码。 从主干分支分出,修理完毕并测试上线后,并回主干分支。并回后,视情况可以删除该分支。

准生产分支(预发布分支) release

较大的版本上线前,会从开发分支中分出准生产分支,进行最后阶段的集成测试。该版本上线后,会合并到主干分支。生产环境运行一段阶段较稳定后可以视情况删除。

功能分支 feature

为了不影响较短周期的开发工作,一般把中长期开发模块,会从开发分支中独立出来。 开发完成后会合并到开发分支。

在这里插入图片描述

4.1 分支操作常用命令

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值