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分支有没有合并到当前分支的内容 解决方法:使用大写的 ...
随机推荐
- [原]项目进阶 之 持续构建环境搭建(三)Maven环境搭建
上次的博文项目进阶 之 持续构建环境搭建(二)Nexus私服器中,我们搭建了一个Nexus的maven私服,这次我们来重点讲解一下Maven的安装和配置.这里说明一下这次的环境搭建,比较基础,但却非常 ...
- ffmpeg 打开视频流太慢(上)
新版ffmpeg打开网络视频流需要调用avformat_find_stream_info方法,很多朋友会发现调用改方法耗费很多时间造成打开视频流太慢.有两个参数可以减少avformat_find_st ...
- Django 学习笔记之五 Django中数据库中ManyToManyField及ForeignKey
1.model里面的代码: from __future__ import unicode_literalsimport django.utils.timezone as timezonefrom dj ...
- 【转】在RedHat上搭建自己Email服务器
原文:http://6839976.blog.51cto.com/6829976/1323482 by LN__@linux 目前邮件服务器中,想要拥有自己的邮件服务器,单单使用senmail,pos ...
- 2659: [Beijing wc2012]算不出的算式 - BZOJ
最近有点颓废,刷水题,数学题(根本不会做啊) 题意:求 q,p是两个奇质数 网上题解就直接说是几何意义,问了别人才知道 我们在坐标轴上画出来就是在线段y=(q/p)x下方的格点和y=(p/q)x下方的 ...
- 【转载】Spring中DispatcherServlet与ContextLoaderListener的区别
昨天在写springmvc的时候,在web.xml中配置了DispatcherServlet,如下: <servlet> <servlet-name>DispatcherSer ...
- libcurl编程学习
一.curl简介 curl是一个利用URL语法在命令行方式下工作的文件传输工具.它支持的协议有:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以 ...
- win8 ubuntu
点进去看到几点注意: 1. 如果Windows是UEFI方式安装的,那Ubuntu必须也用UEFI方式安装 2. 必须用64位的Ubuntu安装文件,32位的不能探测EFI 3. 必须用UEFI的方式 ...
- Unity3D–Texture图片空间和内存占用分析(转载)
原地址:http://www.unity蛮牛.com/home.php?mod=space&uid=1801&do=blog&id=756 Texture图片空间和内存占用分析 ...
- VirtualBox下导入CentOS后,无法上网
从VirtualBox的"管理"菜单下,选择"导出虚拟电脑",存一个备份.用时,再从"管理"菜单下,选择"导入虚拟电脑&q ...