git - 更新 origin/master 分支而不检查该分支
问题描述
我的假设是:
git fetch origin
将更新所有远程分支:
remotes/origin/master
remotes/origin/dev
等等
但事实证明似乎并非如此,如果不是这样,我无法弄清楚这些分支如何保持最新状态。
如何确保我的本地远程分支是最新的?也许我会有更好的运气:
git fetch origin master:master
?
解决方案
通常,git fetch origin
将更新 . 下的所有远程跟踪名称origin/*
。在什么情况下您不会看到这种情况发生?现代 Git 有两种常见的情况:
单分支克隆将一个上游分支映射到一个远程跟踪名称。如果这不是您想要的,请避免使用单分支克隆(或将它们转换为普通克隆)。
git fetch origin master
例如,Running将更新限制为仅更新origin/master
,即使dev
onorigin
有新的提交,origin/dev
如果您使用 rungit fetch origin
而不是git fetch origin master
.
git pull
如果您使用它,则第二种情况一直由 驱动。(我建议避免git pull
支持单独的 fetch 和 second-command,根据需要重新设置或合并。)
最后一种情况在 1.8.2 之前的 Git 版本中很常见,例如,其中git fetch origin master
甚至无法更新origin/master
。解决方案是升级到现代 Git。
推荐阅读
- javascript - setTimeout 定时器值可以扩展
- r - 如何处理加载 rdata 文件的错误?
- pentaho - 使用 Pentaho 中的变量定义两个不同数据集的数据库连接
- angular - 使用 Angular 7 在 Internet Explorer 中使用 var css
- string - 搜索单词而不是字符串?
- apache-spark - (SPARK)对应用了多个过滤器的数据进行分区的最佳方法是什么?
- android - 如何在列表视图中获取带有子数据的主节点以自定义采用者
- swift - 符合通用协议的多个实例
- java - 从 sql 表中检查最大 id 后,如何在 JPA 中更改自动递增的 id 以启动 id?
- node.js - 无法处理多个履行响应