1、git基础介绍及远程/本地仓库、分支
1. Git基础介绍
基于Git进行开发时,首先需要将远程仓库代码clone到本地,即为本地仓库。后续大部分时间都是基于本地仓库上的分支进行编码,最后将本地仓库的代码合入远程仓库。
1.1. 远程仓库

Figure 1特性分支、个人远程分支
1.1.1. 主线分支
主线分支也叫master分支,用于产品对外正式发布使用,最终所有特性的代码都会合入主线分支
1.1.2. 特性分支
特性分支,是指按特性构建并转测试的分支,特性分支都是基于主线分支创建的,特性分支命名规则:feature_特性名称,举例 feature_ipush
特性分支,主要用于在版本迭代开发过程中,按特性转测试,多个特性之间互不依赖,并行操作提高特性上车效率。
1.1.3. 个人特性分支
个人特性分支,基于特性分支创建,增加个人特性分支的目的主要是增加审核机制,即个人特性分支合入特性分支的过程中,需要Committer审核通过才能合入。
1.2. 本地仓库

Figure 2工作区、暂存区、版本库
Git本地仓库分为工作区,暂存区(index),版本库
git add:将工作区修改或新增的文件添加到暂存区
git commit:将暂且区的修改添加到版本库对应的个人本地分支中
git reset:回退commit提交
git rm --cached <file>:直接从暂存区删除文件,工作区则不做出改变。
git checkout -- <file>:会用暂存区全部或指定的文件替换工作区的文件(会清除工作区中未添加到暂存区的改动)
git checkout HEAD <file>:会用HEAD指向的分支中的全部或者部分文件替换暂存区和以及工作区中的文件(会清除工作区中未提交的改动,也会清除暂存区中未提交的改动
1、git基础介绍及远程/本地仓库、分支的更多相关文章
- Git创建一个自己的本地仓库
如果我们要把一个项目加入到Git的版本管理中,可以在项目所在的目录用git init命令建立一个空的本地仓库,然后再用git add命令把它们都加入到Git本地仓库的暂存区(stage or inde ...
- git基础介绍
git基础介绍 这是git操作的基础篇,是以前的写的操作文档,就没有进行手打,直接把图片贴进来了,你们担待哈,有不正确的地方可以指正出来,我将在第一时间去修改,多谢哈! 一.文件状态:git系统的文件 ...
- [原]git的使用(一)---建立本地仓库、add和commit、status和git diff、版本回退使用git reset
在window下已经安装了git的环境 1.建立本地仓库 mkdir test #建立test目录 cd test #进入目录 git init # ...
- Git 学习(三)本地仓库操作——git add & commit
Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...
- Git学习-安装与创建本地仓库
前言 以前公司进行项目的版本管理都是用svn,最近公司推荐用git,把svn给关闭了.没办法,拿来主义.网上一番猛操作,勉强也能用了,给自己做个笔记. git安装 因为我用的是windos系统,在Wi ...
- git使用问题一新建本地仓库添加远程合并推送
1,git远程新建仓库demo 2,git本地初始化仓库demo 3,git本地添加远程仓库 git remote add <name> <url> 4,git把远程仓库pul ...
- Git 基础教程 之 远程库更新到本地
PS:git remote -v 查看远程仓库 git diff temp 比较master 分支与temp的不同 如果分支没有合并到主分支上,用 git branch - ...
- 代码管理工具-Git基础介绍及常用技巧
目录 Git起源 基本概念 Branch.HEAD和Commit tree Git分支 git merge 和 git rebase 的区别和抉择 与远程仓库的交互 关于一些实际开发场景的问题和解决方 ...
- Git 基础教程 之 远程推送
当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应了起来,并且,远程仓库默认名称是origin. git remote 查看远程库信息 git remote - ...
随机推荐
- idea代码回退到前面的版本
好多时候一个项目添加了新功能,导致整个项目不能运行,而之前的版本又没有保存.怎么办了?回退到以前的版本就OK啦, 没错IDEA就是这个智能化. 第一步:点击项目名称->右键->选择Loca ...
- HDU 1041(01展开 大数)
题意是将 1 展开成 01 ,将 0 展开成 10 ,问这样展开 n 次后序列中有多少对 0. 手写发现:0,1,1,3,5,11 ... 即 a[ i ] = a[ i -1 ] + a[ i - ...
- HDU 1015(字符运算 **)
题意是在一段大写英文字符中找出 5 个字符通过代入公式运算得到目标值,如有多组字符满足题意,则输出字典序最大的一组,否则输出 no solution. 应该是用深搜做的,但是直接暴力也过了……(应该没 ...
- c# 三种传参方式 in,out,ref
in:默认方式,传值不返回 out:不传值 但是会返回新值给予传参对象 ref:传存储地址,所以传参前必须赋值初始化,传值后的运算结果直接作用在传参上 Out和ref的效果差不多
- SpringBoot常用注解使用
1.RequestBody和ResponseBody注解 @RequestMapping(“url”),这里的 url写的是请求路径的一部分,一般作用在 Controller的方法上,作为请求的映射地 ...
- Oracle12c开启scott账户
在oracle目录app\orcl\product\12.1.0\dbhome_1\NETWORK\ADMIN\下tnsnames.ora文件最后加入以下内容 PDBORCL = (DESCRIPTI ...
- maven项目配置框架
任何一个maven项目都会继承一个默认的父pom配置:Super POM,详见:https://maven.apache.org/guides/introduction/introduction-to ...
- vue.cli 中使用 less 来写css样式
vue-cli 的webpack中已配置了less,但 package.json 中没有选项,为了方便开发中使用,需安装一下: 安装方式一: npm install less less-loader ...
- 四.HashSet原理及实现学习总结
在上一篇博文(HashMap原理及实现学习总结)详细总结了HashMap的实现过程,对于HashSet而言,它是基于HashMap来实现的,底层采用HashMap来保存元素.所以如果对HashMap比 ...
- Session 快速开始 通过session的attribute通信
[web.xml] <session-config> <session-timeout>30</session-timeout> <cookie-config ...