git分支管理与tag的学习笔记
git分支管理学习笔记:
创建dev分支:
git branch dev
查看分支:
git branch
切换分支:
git checkout dev
创建并切换分支:
git checkout dev -b zhf
提交分支:
git push origin zhf
本地创建分支并关联远程分支:(很重要,只有这样才会达到内容同步的效果)
git checkout -b zhf origin/zhf
抓取分支:
从远程库clone时,默认只能看到master。想在dev分支上开发,就必须创建origin的dev分支到本地:
git checkout -b dev origin/zhf
你想往哪个分支上合并,则需要先切换到哪个分支上
例如合并到master分支:
git checkout master
git merge zhf
上面说的也不对,一般是先合并到dev分支上面的,所以:
git checkout dev
git merge zhf
上面的操作也仅仅是在本地仓库完成,没有提交到远程仓库中去。
本人库下的内容可以随便提交到远程仓库,但是不可以轻易合并到dev或者master分支上面去。
确认好之后再做提交。
合并的时候容易发生冲突。
别人已经改过的代码和自己的代码在同一文件中,那不可能直接将改过的代码直接合并到主分支上面去。这样不就是覆盖了吗?那该怎么处理?
如果保留,那就需要手动修改合并之后的内容了。
将需要保留的内容保留,不要保留的内容去除。
合并完之后还得再提交一次。
git add .
git commit -m "合并"
然后再push
删除分支:
git branch -d 分支名
删除远程分支:
git push origin :分支名
git push origin --delete 分支名
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull 试图合并。
如果git pull 提示
"no tracking infomation" ,则说明本地分支和远程分支的链接没有创建,用命令git branch --set-upstream branch-name origin/branch-name
标签管理:
意义:发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本的一个快照。
之后再打上一个版本:(v1.1为自己自定义的新版本号, 之后的一串字符为提交版本的id"
git tag v1.1 87a94a1d9e5a77a52c89a80c28e73ae3c6bcf518
切换版本:
git checkout v1.1
其他命令:
查看所有标签
git tag
指定commd id 标签
git tag 标签名 commitID
切换到指定标签:
git checkout 标签名
删除标签
git tag -d
推送标签到远程:
git push origin 标签名
一次性推送全部尚未推送到远程的本地标签:
git push origin --tags
删除已经推送到远程的标签:
先删除本地标签:
git tag -d 标签名
再从远程删除:
git push origin :r
其他:
git pull命令要经常用
本地创建分支并关联远程分支:(很重要,只有这样才会达到内容同步的效果)
git checkout -b zhf origin/zhf
有一个主支和分支的概念,在提交之前,需要先保证主支的一致性,然后才能提交自己的代码。
将分支上的内容进行更新:
git push origin zhf
https://www.cnblogs.com/yongdaimi/p/7600052.html
git分支管理与tag的学习笔记的更多相关文章
- git学习------>Git 分支管理最佳实践
ps:本文转载于 : https://www.ibm.com/developerworks/cn/java/j-lo-git-mange/index.html Git 是目前最流行的源代码管理工具.大 ...
- Git学习总结(12)——多人开发 Git 分支管理详解
1.前言 在上一篇博客中我们主要讲解了Git 远程仓库,相信大家对远程的Git仓库有一定的了解,嘿嘿.在这一篇博客中我们来在大家讲解一下Git 分支管理,这可以说是Git的又一大特点.下面我们就来学习 ...
- Git 分支管理策略汇总
原文链接: Git 分支管理策略 最近,团队新入职了一些小伙伴,在开发过程中,他们问我 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 ...
随机推荐
- Mybaits多个参数的传递
今天介绍是多个参数传递到映射xml,进行CURD操作 一.使用参数映射的方法进行传递 1在接口写对应的方法 public interface EmployeeMapper { public Emplo ...
- SOUI中对象的生命周期管理
C++程序员最难的一环就是处理内存泄漏. 很多情况下,一个对象在一个模块里分配了内存,忘记了释放,或者在另一个模块里释放都会导致内存相关的问题. SOUI中大部分暴露在应用层的对象都使用类似COM的引 ...
- day68—angularJS学习笔记之-过滤器
转行学开发,代码100天——2018-05-23 今天学习angularJS的过滤器的使用. angular中的常用过滤器用来修改数据格式,主要有以下几类: 1.大写,| uppercase 2.小写 ...
- 【MM系列】SAP 物料凭证增强
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]在SAP里查看数据的方法 前言部 ...
- Arm-linux-gcc-4.3.2安装步骤 (转)
http://blog.chinaunix.net/uid-26119896-id-3302233.html 安装交叉编译工具链: 1.首先以root用户登入 2.复制arm-linux-gcc-4. ...
- ELK7.4.0分析nginx json日志
ELK7.4.0单节点部署 环境准备 安装系统,数据盘设置为/srv 内核优化参考 我们需要创建elk专用的账号,并创建所需要的目录并授权 useradd elk; mkdir /srv/{app,d ...
- Linux搜索文件
1.7.1 使用which 查找可执行文件的绝对路径 ·只能用来查找PATH环境变量中出现的路径下的可执行文件 1.7.2 使用whereis 查找文件 ·通过预先生成的一个文件列表库查找与给出文件名 ...
- 关于MySQL的安装使用心得
MySQL浅浅地学习了几天,当然还是转到正轨Java上来了,昨天打了一串代码,测试注解来着,结果MySQL挂了~~~ 如何干净卸载MySQL帖子有很多,不再赘述,注册表是个好东西~~ 卸载了Mysql ...
- (4.24)【mysql、sql server】分布式全局唯一ID生成方案
参考:分布式全局唯一ID生成方案:https://blog.csdn.net/linzhiqiang0316/article/details/80425437 分表生成唯一ID方案 sql serve ...
- ubutu16.04编译安装apache
// 安装编译器 sudo apt-get install build-essential // 下载所需依赖及apache2源码包 wget --no-check-certificate https ...