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 - ...
随机推荐
- 谈谈关于PHP连接数据库的两种方法(PDO&Mysqli)
前言:在我们之前学习sql语句的时候都是停留在黑窗口的,怎样才能让mysql与程序代码发生联系呢?此时PDO和Mysqli应运而生,为了解决这个问题 (一)开启其中(pdo或者mysqli)的php扩 ...
- IDEA DEBUG无法启动
如题:idea DEBUG无法启动 解决方法: 1.查找出占用进程id 2.杀死进程 cmd 输入 命令: 1.netstat -ano|findstr 4405 2.taskkill -f -pid ...
- Freemarker中的日期输出
<p> ${scheme.createTime?string("yyyy年MM月dd日 HH:mm:ss")}</p>
- bzoj千题计划309:bzoj4332: JSOI2012 分零食(分治+FFT)
https://www.lydsy.com/JudgeOnline/problem.php?id=4332 因为如果一位小朋友得不到糖果,那么在她身后的小朋友们也都得不到糖果. 所以设g[i][j] ...
- git个人学习总结
什么是git 代码管理工具,分布式管理,每个人电脑都是一个完整的版本库.并且有中央服务器(gitHub,gitLab)提供代码交换修改 git基础概念 工作区:自己的项目(有一个隐藏目录 " ...
- 当一些库和类无法在Silverlight工程中使用
因为要更新空间数据,所以需要导入MDB文件.但是Silverlight中不能直接使用OdbcConnection类读取MDB文件,所以需要新建一个ASP.NET空Web应用程序 工程 随后在此工程中, ...
- 使用 Topshelf 结合 Quartz.NET 创建 Windows 服务
Ø 前言 之前一篇文章已经介绍了,如何使用 Topshelf 创建 Windows 服务.当时提到还缺少一个任务调度框架,就是 Quartz.NET.而本文就展开对 Quartz.NET 的研究,以 ...
- 十八、Linux 进程与信号---进程介绍
18.1 进程的概念 程序:程序(program)是存放再磁盘文件中的可执行文件 进程 程序的执行实例被称为进程(process) 一个程序的执行实例可能由多个 进程具有独立的权限和职责.如果系统中某 ...
- Debian Security Advisory(Debian安全报告) DSA-4410-1 openjdk-8 security update
Debian Security Advisory(Debian安全报告) DSA-4410-1 openjdk-8 security update Package :openjdk-8 CVE ID: ...
- C++ 窗口
DestroyWindow(); //销毁窗口 可重载的事件: PostNcDestroy 窗口销毁后调用