Git分支管理
一、Git分支的使用
查看分支:
git branch
创建分支:
git branch branch1
切换到branch1
git checkout branch1
再用git branch查看,会看到有两个分支master和branch1,当前分支前面会有一个*
在branch1分支下,创建一个内容为branch file的branchtest的文件,并提交到新分支:
echo "branch file" >> branchtest
git add branchtest
git commit -m "branch1"
切换回master分支后会发现已经没有branchtest这个文件
git checkout master然后ls就看不到branchtest这个文件
二、Git分支的合并和删除
把branch1分支合并到master
git merge branch1
删除分支,如果分支没有合并,删除之前会提示
git branch -d branch1
如果分支没有合并,删除之前会提示
不合并强制删除
git brach -D branch1
合并和删除分支时都不能在该分支下操作
三、分支使用的原则
1、master分支是非常重要的,线上发布代码用这个分支,平时我们开发代码不要在这个分支上
2、创建一个dev分支,专门用作开发,只有当发布到线上之前,才会把dev分支合并到master
3、开发人员应该在dev的基础上再分支成个人分支,个人分支(在自己pc上)里面开发代码,然后合并到dev分支
四、现场保留
当你正在进行项目中某一部分的工作,里面的东西处于一个比较杂乱的状态,而你想转到其他分支上进行一些工作,问题是,你不想提交进行了一半的工作,否则以后你无法回到这个工作点,解决这个问题的方法就是git stash命令
例如:在branch1分支上编译一个文件1.txt
想要去另外分支逛逛,就可以先git add 1.txt
然后git stash保存一下现场
在到另外的分支上去(如果1.txt是一个已经存在的文件那么保存现场后文件内容则是你在编辑之前的内容,如果1.txt是一个新建的文件那么保存后就看不到1.txt这个文件了)
在回到branch1后查看现场列表:
git stash list
stash@{0}: WIP on branch1: 887e177 add 000
stash@{1}: WIP on branch1: 887e177 add 000
stash@{2}: WIP on branch1: 887e177 add 000
恢复现场用git stash apply,或指定要恢复的现场
git stash apply stash@{0}
五、远程分支
查看远程分支信息,使用git remote -v本地新建的分支如果不推送到远程,对其他人就是不可见的
查看远程分支:
git ls-remote origin
从本地推送分支:
git push origin branch1
如果推送失败,先用git pul抓取远程的新提交
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突
Git分支管理的更多相关文章
- GIT分支管理模型
GIT分支管理模型 link: git-branching-model 主分支(Main branches) 项目两个常驻分支: master 主干分支(锁定),仅用于发布新版本,平时不能在上面干活, ...
- Git 分支管理是一门艺术
转载: Git 分支管理是一门艺术 1 要确保:团队成员从主分支(master)获得的都是处于可发布状态的代码,而从开发分支(develop)应该总能够获得最新开发进展的代码. 2 "辅助分 ...
- Git 分支管理详解
大纲: 1.前言 2.创建分支 3.切换分支 4.合并分支(快速合并) 5.删除分支 6.分支合并冲突 7.合并分支(普通合并) 8.分支管理策略 9.团队多人开发协作 10.总结 注,测试机 Cen ...
- Git分支管理[三]
标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 git分支管理命令 git branch #创建分支 git branch -v # ...
- Git—分支管理
Git—分支管理 分支学习:branch称为分支,默认仅有一个名为master的分支.一般开发新功能流程为:开发新功能时会在分支dev上进行,开发完毕后再合并到master分支. branch相关常用 ...
- [转载]理解 Git 分支管理最佳实践
原文 理解 Git 分支管理最佳实践 Git 分支有哪些 在进行分支管理讲解之前,我们先来对分支进行一个简单的分类,并明确每一类分支的用途. 分支分类 根据生命周期区分 主分支:master,deve ...
- 02: git分支管理
目录:GIT其他篇 01: git & github 02: git分支管理 目录: 1.1 Git常用命令 1.2 主要分支(保护分支) 1.3 特性分支:feature (开发分支合并到d ...
- git 分支管理——多人协作
git 分支管理--多人协作 一般一个项目有一个master主分支,还有一个develop开发分支.主要是在develop分支上协作开发,然后merge合并到master主分支上. 当从远程仓库克隆时 ...
- Git分支管理及合并
Git分支管理 建立分支 git branch [name] 切换到分支 git checkout [name] 查看有哪些分支 git branch 比较分支 git diff [b ...
- git学习------>Git 分支管理最佳实践
ps:本文转载于 : https://www.ibm.com/developerworks/cn/java/j-lo-git-mange/index.html Git 是目前最流行的源代码管理工具.大 ...
随机推荐
- android小技巧(二)
一.如何控制Android LED等?(设置NotificationManager的一些参数) 代码如下: final int ID_LED=19871103; NotificationManage ...
- 生成模型(Generative)和判别模型(Discriminative)
生成模型(Generative)和判别模型(Discriminative) 引言 最近看文章<A survey of appearance models in visual object ...
- Linq 备忘录
public class CTest { public int i { get; set; } public string j { get; set; } } 一.Range var items=En ...
- Android数据持久化技术 — — —文件存储
文件保存 package com.example.datastroredtest; import android.app.Activity;import android.os.Bundle;impor ...
- Python学习路程day17
常用算法与设计模式 选择排序 时间复杂度 二.计算方法 1.一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道.但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费 ...
- PIC XC8 EEPROM操作
要做一个报警功能的东东,要求可以通过遥控来改变遥控内容.由于对系统的稳定性要求很高,所以用了看门狗. 可是看门狗复位会引起所有寄存器重置,恢复到默认状态.遥控要改变的内容也被复位了,所以只能借助EEP ...
- Linux Shell 2>&1 &
转 脚本如: nohup /mnt/Nand3/H2000G >/dev/null 2>&1 & 对 于& 1 更准确的说应该是文件描述符 1,而1 一般代表的就 ...
- 用nodejs实现json和jsonp服务
一.JSON和JSONP JSONP的全称是JSON with Padding,由于同源策略的限制,XmlHttpRequest只允许请求当前源(协议,域名,端口)的资源.如果要进行跨域请求,我们可以 ...
- [转载 ]POJ 1273 最大流模板
转载 百度文库花了5分下的 不过确实是自己需要的东西经典的最大流题POJ1273 ——其他练习题 POJ3436 . 题意描述: 现在有m个池塘(从1到m开始编号,1为源点,m为汇点),及n条水渠,给 ...
- php 使用 curl 发送 post 数据
作为第三方开发商,经常会需要调用平台接口,远程调用,就要用到curl,其实质就是叫调用的方法与用到的参数以http post的方式发送至平台服务器. 简单的例子: $url = 'http://'; ...