git - 为什么推送本地分支时必须使用--set-upstream
问题描述
--set-upstream
我承认为当前本地分支设置默认远程分支这一事实,我可以更轻松地拉取提交。但是假设我不想跟踪远程分支,因为我只是创建一个快速修复的分支,所以我只需要推送它并要求团队负责人对其进行审查并合并它。我不需要使用 git pull 来获取最新的提交,因为没有其他团队成员会在我的本地分支上工作。在这种情况下,我不需要使用--set-upstream
,但我仍然被迫使用它,否则我无法推送我的分支。
解决方案
...在这种情况下,我不需要使用
--set-upstream
正确的。
但我仍然被迫使用这个......
不,您不会被迫使用它。想用就用,不想用就别用。
如果没有为当前分支设置上游并且您的push.default
设置是simple
, 1您将必须拼出所有详细信息:
git push origin somebranch
或者,如果您愿意:
git push origin HEAD
因为当您省略refspec参数(上述两个命令的或部分)时,该simple
设置要求当前分支具有上游。没有上游,拒绝做- 但提供 refspec overrides 。somebranch
HEAD
simple
git push
simple
1此处的详细信息在某种程度上取决于版本,因为Git 2.x 与 Git 1.x 中的默认设置不同。push.default
但是,如果您已将您的push.default
明确设置为simple
,即使是古老的 Git 版本也应该表现得像 Git 2.0 或更高版本。
推荐阅读
- json - 是什么将字符串“.json”添加到 url?
- c++ - 具有更多参数的调用模板专业化,用于单参数模板调用的特定值
- amazon-web-services - Terraform 尝试刷新不存在的状态
- vue.js - 重新加载时本地存储返回对象
- java - 使用环境变量在 @ConfigurationProperties 中填充 Map
- python - 在这种情况下如何使用 groupby() ?
- html - 没有 `name` 属性的RDFa ` ` 是否与 HTML5 兼容?
- php - MySQL PDO - how to deal with question marks in field names
- excel - Sql Developer 将表导出到 .xls (.xml)
- c# - 选择多选项 Blazor 自定义组件 javascript 免费