当前位置: 首页 > news >正文

Git本地分支与远程分支的追踪关系

序言

测试环境:ubantu14、window10

读本文需要用到的操作基础

注:以下操作命令主要与分支有关。且认为本地master为当前分支,dev为要新建的分支。

从当前分支切换到‘dev’分支:
git checkout dev
建立并切换新分支:
git checkout -b 'dev'
查看当前详细分支信息(可看到当前分支与对应的远程追踪分支):
git branch -vv
查看当前远程仓库信息
git remote -vv

Git本地分支与远程分支的追踪关系

我们可以通过git branch -vv查看分支与远程分支追踪状态,要修改追踪关系接下来会讲。 
一般我们Git提交都不会直接提交主分支master,先提交到dev分支,没问题,再会合并到master分支。接下来会讲。 
追踪关系主要就是说,我当前本地分支会对应一个远程分支,我的任何操作(eg. push、pull操作)都只会在这个关系上发生。如果我们想当前本地分支与远程的其他分支发生关系呢?接下来会讲。

Git push

git push origin [本地分支名]:[远程分支名]

如果直接写git push,是push当前分支到当前分支的追踪关系分支。 
一般本地master分支,push到的是远程仓库的master分支。 
我们可以修改其分支的追踪关系。 
注:接下来操作中,是修改本地‘master’分支的追踪分支操作,原先对应远程分支是master,我们要修改为远程dev分支。 
步骤:

  • ① 进入当前项目根目录的’.git’文件夹(请自行设置显示隐藏文件)。打开config文件(注意不要用window记事本打开)。
  • ② [remote "origin"]这一项是修改对应远程Git仓库地址。
  • ③ [branch "master"]这一项是修改本地分支‘master’的远程追踪关系分支,直接修改merge = refs/heads/mastermerge = refs/heads/dev
  • ④ 再次通过命令行查看状态就可以发现你的远程分支已经改掉。
  • ⑤ 可能出现的问题补充: 
    • 没有[branch "master"]这一项怎么办? 
      如果是新项目,没有git pull或git clone,就不会与远程分支建立关系,或者也可以自己添加这一项,但不建议。

[注:欢迎大佬驾临指出错误]

相关文章:

  • Git-命令行-删除本地和远程分支
  • Git的使用教程(六)远程仓库
  • 如何去解决fatal: refusing to merge unrelated histories
  • QT跨目录编译及多工程集成(动态库的创建、引用及工程间相互依赖关系的pro文件编写方法)
  • Pro文件变量详细说明
  • 浅谈 qmake 之 pro、pri、prf、prl文件
  • android实现点击两次返回键实现退出功能
  • Qt共享内存的使用
  • Qt for android 弹出Detected problems with app native libraries (please consult log for detail): 解决方案
  • qml去掉标题栏后实现窗口拖动
  • Qt for android 在安卓上面运行app启动闪黑屏的解决方法
  • Qt 中文及字符混合加密,双重加密解密
  • Qt 实时监控网络状态
  • VNISEdit工具打包QT程序
  • Linux安装python3.6
  • JavaScript 如何正确处理 Unicode 编码问题!
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • Debian下无root权限使用Python访问Oracle
  • eclipse的离线汉化
  • Hibernate最全面试题
  • jquery cookie
  • Python爬虫--- 1.3 BS4库的解析器
  • Redis字符串类型内部编码剖析
  • Vue2 SSR 的优化之旅
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 前端js -- this指向总结。
  • 区块链共识机制优缺点对比都是什么
  • 温故知新之javascript面向对象
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • (2)STM32单片机上位机
  • (C语言)共用体union的用法举例
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (附源码)ssm失物招领系统 毕业设计 182317
  • (免费领源码)Python#MySQL图书馆管理系统071718-计算机毕业设计项目选题推荐
  • (十一)c52学习之旅-动态数码管
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (转) ns2/nam与nam实现相关的文件
  • .axf 转化 .bin文件 的方法
  • .NET 回调、接口回调、 委托
  • .netcore如何运行环境安装到Linux服务器
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • [ 云计算 | AWS 实践 ] 基于 Amazon S3 协议搭建个人云存储服务
  • [20190113]四校联考
  • [bzoj1324]Exca王者之剑_最小割
  • [C++] Windows中字符串函数的种类
  • [C++]priority_queue的介绍及模拟实现