git branch
使用git管理工具,branch 应该是我们接触最多的。不论我们是修复bug,还是做项目,都会新开branch,工作完成后再合并。
然而对一些初学者,对git的一些命令知之甚少,这里,给大家写一些常用的和一些不常用的,但是非常有用的branch操作命令。
本文书写约定当前分支我们用master名字,新分支用 branchName 名字。
首先我们要知道如何创建分支,如果只单纯的创建一个分支,可以使用 git branch branchName 就可以了,这样创建的分支就相当于是在当前分支(master)下的一个副本。并且,会把当前分支的git log 日志一起copy过去。
我们可以使用 git checkout branchName 切换到新分支,然后用 git log 查看下,你会看到显示的是之前 master 分支下的日志。
当然我们也可以创建一个全新的branch,它会把之前分支(master)的日志丢弃。然而这个命令却不是 branch 命令,而是 checkout 命令和 --orphan 参数,命令如下:
$ git checkout --orphan branchName
该命令会创建一个全新的branch ,并且会切换到该分支上。使用该命令需要注意,在修改任何文件之前,需要commit一次,否则无法对比第一次文件提交时候的对比,切记。
有时候,我们在master分支,但是我们想用本地的 localBranchName 分支来创建分支,但是我们又不想先切换到test分支再创建 branchName 分支,我们可以使用 git branch branchName localBranchName 命令,如果使用 git checkout -b branchName localBranchName 会创建并且切换分支。
当然,我们也可以用远程分支创建来创建分支 git branch branchName origin/remoteBranchName ,利用远程分支创建的本地分支会自动和该远程分支建立关联。和本地分支创建一样,可以使用 checkout 命令。
有时候我们还需要查看下本地有多少分支,方便我们切换到别的分支去,可以执行 git branch 命令,就就可以看到本地的所有分支了。当然,既然可以查看本地分支,当然也可以查看远程分支,和所有分支(本地分支和远程分支)。
执行 git branch -r 可以查看远程分支 , git branch -a 可以查看所有分支
注释:
-r remote
-a all
创建分支还有另外一个方法,就是 git checkout -b branchName ,该命令会创建一个分支,并且会切换到该分支。但是,之前 master 分支的日志也会保留。
有时候,你创建好分支后,你会发现单词写错了,那么现在你会去怎么解决呢?
第一种办法就是,删除该分支,然后在从新创建。
执行 git branch -d branchName 命令即可删除相关分支,当然,前提是你当前不在该分支上。git是不能删除当前所在分支的。
如果分支有改动,且没有合并,使用 -d 是无法删除的,需要用 -D 强行删除该分支。
第二种方法就是,重命名分支,我想很多人都会选择后者吧,O(∩_∩)O哈哈~
执行 git branch -m brnachName newBranchName 即可重命名分支。
查看本地所有分支的最后一次提交 git branch -v
当你不确定当前分支是否和远程分支有关联,或者,查看当前分支和远程分支的哪个分支进行关联的时候,我们可以运行 git branch -vv 命令查看本地分支和远程分支的关联状态。
当你有一个仓库长时间没有去动过了,而且已经忘记该仓库的远程仓库的地址,但是现在你有修改,可以使用 git remote -v 查看远程仓库的地址。
未完待续。。。
git log --reverse 从最开始提交预览日志,而不是最后一次提交
git push origin master 将本地分支推送到远程 master分支上,是 git push origin master:master 的简写,如果想将当前分支推送到远程其他分支
http://prototype.ui.sh.ctriptravel.com/code_pub/cn/vacation_v2/mice_v2/index.php## <http://prototype.ui.sh.ctriptravel.com/code_pub/cn/vacation_v2/mice_v2/index.php#%23>
git branch的更多相关文章
- 自动提交Git branch代码评审到Review Board系统
背景 敏捷软件开发中,越小的反馈环,意味着软件质量越容易得到保证. 作为组件团队,我们的开发任务中,往往存在一些特性涉及到几十个功能点,开发周期持续数周或数月的情况.如何在开发过程中保证软件质量,是个 ...
- git branch(git 的branch 使用方法)
查看分支: $ git branch 该命令会类出当先项目中的所有分支信息,其中以*开头的表示当前所在的分支.参数-r列出远程仓库中的分支,而-a则远程与本地仓库的全部分支. 创 ...
- 管理分支:git branch
新建分支的意义: 创建一个单独的工作分支,避免对主分支master造成太多的干扰,也方便与他们交流协作. 进行高风险的工作时,创建一个实验性的分支,扔掉一个烂摊子总比收拾一个烂摊子好得多. 合并别人工 ...
- git branch使用
(1) git配置global信息: git config --global user.name "Your Name" git config --global user.emai ...
- git branch用法总结
git branch git branch 不带参数:列出本地已经存在的分支,并且在当前分支的前面加“*”号标记,例如: #git branch* master newbranch ...
- Git branch 和 Git checkout常见用法
git branch 和 git checkout经常在一起使用,所以在此将它们合在一起 1.Git branch 一般用于分支的操作,比如创建分支,查看分支等等, 1.1 git branch 不带 ...
- git branch几个简单操作
1.git branch 该命令会列出当先项目中的所有分支信息,其中以*开头的表示当前所在的分支.参数-r列出远程仓库中的分支,而-a则远程与本地仓库的全部分支. 2.git branch deve ...
- git branch 管理常用命令
查看本地分支 git branch * dev master *代表当前位于dev分支 查看远程分支 git branch --remote origin/dev origin/master 查看远程 ...
- git使用命令, 特别:git checkout -b a 与 git branch a区别
摘自: https://my.oschina.net/u/587974/blog/74341 创建分支: $ git branch mybranch 切换分支: $ git checkout mybr ...
- git branch -D 大写的D 删除分支
今天删除本地分支 git branch -d XXX 提示: the branch XXX is not fully merged 原因:XXX分支有没有合并到当前分支的内容 解决方法:使用大写的 ...
随机推荐
- 如何成为一个牛掰的Java大神?
一.基础篇 1.1 JVM 1.1.1. Java内存模型,Java内存管理,Java堆和栈,垃圾回收 http://www.jcp.org/en/jsr/detail?id=133http://if ...
- Bluetooth
Android provides a default Bluetooth stack, BlueDroid, that is divided into two layers: The Bluetoot ...
- OC面向对象封装
面向对象语言的三大特性:封装.继承.多态 封装:不暴露自己类的内部的属性,提高自己的数据的安全性:就像一个接线盒一样,内部结构看不到,只有外部的接口提供给我们使用,这样既安全又美观:在代码方面就是结构 ...
- Careercup - Facebook面试题 - 4922014007558144
2014-05-01 02:13 题目链接 原题: Design question: Say you have hacked in to a network and can deploy your b ...
- OpenLayers中的Layer概念和实践--Openlayers调用WMS服务
整理转自:http://hi.baidu.com/lixuweiok/item/c406a4e6a6d390e7fa42ba4b 本章我认为是这本书的真正开端,终于开始讲一些有意思的东西了.. 在这一 ...
- FTP操作类(支持异步)
public delegate void DownloadProgressChangedEventHandle(string information, long currentprogress, lo ...
- html+css学习笔记 [基础1]
---------------------------------------------------------------------------------------------------- ...
- EXT心得--并非所有的items配置对象都属于EXT的内置类
之前我对EXT的items中未指明xtype的配置对象有一个错误的认识--即虽然某个items未指明它下面的某个组件的xtype,但这个组件肯定属性EXT的某个类.然而今天在查看actioncolum ...
- jquery常用函数与方法汇总
1.delay(duration,[queueName]) 设置一个延时来推迟执行队列中之后的项目. jQuery1.4新增.用于将队列中的函数延时执行.他既可以推迟动画队列的执行,也可以用于自定义队 ...
- C++代码反汇编后的堆栈寄存器EBP和ESP
最近在分析一个进程崩溃的严重问题,其中有些过程分析需要对ebp, esp 有清晰的理解,对于ebp 和esp 相信大家都很熟悉了,但是为了使本文自成体系,我还是解释一下. ebp--栈底指针 esp- ...