在多人协作的情况下,master通常是稳定的分支.可以再建一些"develop","testing"等名称的分支.主管master的人做开发的话最好也建立自己的分支.
命令操作
git branch
列出当前已经checkout出来的分支,当前分支前边用星号表示.
git branch -a
列出所有本地和远程的分支
开始一项功能的开发工作时,基于某一分支创建分支。
- 如基于master创建新分支my
$ git checkout -bmy
master
Switched to a new branch "my" - 切换到自己的分支my
$ git checkoutmy
本地文件将会发生变化,使用git log看一下提交的日志
此时HEAD指针指向my分支中最新的commit id。 - 同步master到自己的分支(适当的时候)
gitmerge --no-ff
master - 合并分支
上一步其实就是合并操作,同样用法git merge [option] branch_name
列出已合并到当前分支的其它分支:git branch --merged
未合并到当前分支的分支:git branch --no-merged
- push
将当前分支提交到关联的远程仓库的对应分支
git pushorigin
my
- 修改分支名称:
gitbranch -m <oldname> <newname></newname></oldname>
- 删除远程分支:
推送一个空分支到远程分支,其实就是删除远程分支:git push origin :<branchname></branchname>
在Git v1.7.0 之后,可以使用--delete选项删除远程分支:git push origin --delete <branchname></branchname>
删除不存在对应远程分支的本地分支,比如远程的master分支:通过git remote show origin
可以看出关联的远程分支处于stale(过时)状态,并提示使用git remote prune
删除.使用 git remote prune origin 可以将其从本地版本库中去除。更简单的方法是使用fetch命令的-p选项,它在fetch之后删除掉没有与远程分支对应的本地分支:git fetch -p
.
更进一步
切换分支时,如果工作区非clean状态,有如下几种处理方式:
- add并且commit,再checkout,提交到当前分支
- add但不commit,可以stash,然后checkout回来之后stash apply,在commit,提交到当前分支
- add但不commit,也不stash,直接checkout,然后再commit的话,记录就在切换分支下面。
其背后的原因:一个本地的git repo只有一个工作区和暂存区,但是有多个分支的提交区,而我们的checkout只是将HEAD指针从一个分支切换到另一个分支。
命令提示符显示分支名称
在bash命令行提示符中添加git仓库的当前branch名称:
function git-branch-name {
git symbolic-ref HEAD 2>/dev/null | cut -d"/" -f 3
}
function git-branch-prompt {
local branch=`git-branch-name`
if [ $branch ]; then printf " (%s)" $branch; fi
}
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$(git-branch-prompt)'$'\n''\$ '
# 其中$'\n'是换行
Original: https://www.cnblogs.com/makefile/p/git-branch.html
Author: 康行天下
Title: git branch 分支管理
相关文章
[自然语言处理入门]-NLP中的注意力机制
本章的主要内容有: 注意力机制概述 传统注意力机制 注意力编码机制 1、注意力机制概述 注意力机制简单来说就是:加权求和机制/模块 加权求和模块 : 神经网络中的一个组件,可以单独使用,但更多地用作为...
StyleGAN 架构解读(重读StyleGAN )精细
StyleGAN 架构解读(重读StyleGAN)精【1】_马鹏森的博客-CSDN博客_stylegan网络结构 StyleGAN 架构解读(重读StyleGAN)精【2】_马鹏森的博客-CSDN博客...
计算机视觉中的注意力机制
计算机视觉中的注意力机制 * - 什么是注意力机制 - 常用的简单的注意力机制 - + SE Attention + CBAM Attention - 其他注意力机制 - 注意力机制该加到网络的哪里 ...
小太阳机器人唤醒软件_有点意思,科大讯飞这款小飞鱼,还真颠覆了我对开车的看法…
对于经常开车的人士来说,幻想自己有个车内"小秘书",帮助自己解决问题、解解乏、可以保障自己安全出行,可以说是每个"老司机"的梦想。 现在市场上的智能车载产品并不多见,但是总的来说,要么是产品功能平平,...
ImportError: cannot import name ‘get_config‘ from ‘tensorflow.python.eager.context‘
在使用下面这个项目时,出现报错 报错完整信息: Traceback (most recent call last): File "train.py", line 5, in 搜了下网上的解决方法 都没...
Paddleseg安装
文章目录 PaddlePaddle安装 * CPU版本 GPU版本 - 检查GPU版本是否安装成功 CUDA安装教程 2.下载PaddleSeg代码 3.安装PaddleSeg依赖 4.确认环境安装成...
中文文本纠错任务简介
最近在梳理中文文本纠错任务,文本根据搜集到的文章整理成的任务简介,在此先感谢大佬们分享的高质量资料。 任务简介 中文文本纠错是针对中文文本拼写错误进行检测与纠正的一项工作,中文的文本纠错,应用场景很多...
【教程】基于TensorFlow Lite的yolov5部署过程
一、文件转化:先将pt文件转化为tflite,我是基于zldrobit大神的pull代码进行文件转化和后续部署的。但刚开始关于pt文件的转换我是采用yolov5 官方的方法,不过按着zldrobit大...
机器学习-kmeans(k均值聚类算法)
聚类的概念 ①聚类输入无监督学习,也就是给定数据没有标签,需要我们人为的对数据进行归类处理。 ②聚类:把相似的东西分到一组 kmeans算法基本概念 ①kmeans算法中有个超参数k,这个k就是我们要...
.pb文件转换为tflite文件遇到问题汇总
1、AttributeError: type object 'TFLiteConverterV2' has no attribute 'from_frozen_graph' 或者 convertr =...
cuda10.1+cudnn10.1+tensorflow2.2.0+pytorch1.7.1下载安装及配置
一、cuda及cudnn下载 1、查看自己电脑是否支持GPU 方法:鼠标移动到此电脑,点击鼠标右键,依次选择属性、设备管理器、显示适配器有以下图标(NVIDIA)即可安装GPU,我的是MX130的。 ...
体系结构 习题/题库/期末复习/考研复习
体系结构 习题/题库/期末复习/考研复习 前段时间体系结构考试收集整理了一些题来练手,现在考完了发出来供需要的人期末复习 or 考研复习用 由于整理的时候为了方便用 word 弄的,题量又有些多,就截...