苦苦挣扎git push.default,不确定 push.default “matching”和“simple””之间有什么区别。让我们从什么是 git push 开始?
git push - 可以根据此配置推送所有分支或单个分支:
配置 1 – 推送所有分支
git config --global push.default matching
它将所有分支推送到远程分支并合并它们。如果不想推送所有分支,可以只推送当前分支。
配置2:只推送当前分支
git config --global push.default simple
它会一个一个地推动分支。它主要与当前分支连接。
**它将所有分支推送到远程分支并合并它们。如果不想推送所有分支,可以只推送当前分支。
push.default
如果没有明确给出 refspec,定义 git push 应该采取的行动。可能的值为:
nothing– 除非明确给出 refspec,否则不要推送任何内容(错误输出)。这主要适用于希望通过始终明确来避免错误的人。current– 推送当前分支,更新接收端同名的分支。适用于中央和非中央工作流程。upstream– 将当前分支推回其更改通常集成到当前分支的分支(称为@{upstream})。仅当您推送到您通常会从中提取的同一存储库(即中央工作流程)时,此模式才有意义。simple– 在集中式工作流程中,如果上游分支的名称与本地分支的名称不同,则像上游一样工作,并增加安全性以拒绝推送。matching– 将所有具有相同名称的分支推到两端。这使您正在推送的存储库记住将被推出的分支集。