push.default
定义如果未明确给出refspec,则git push应该执行的操作。不同的值非常适合特定的工作流程;例如,在纯粹的中央工作流程中(即,获取源等于推送目的地),上游可能就是您想要的。可能的值为:
什么都不做-除非明确给出refspec,否则不要推送任何内容(错误)。这主要是针对那些希望始终保持露骨以避免错误的人。
当前-推送当前分支以在接收端更新具有相同名称的分支。在中央和非中央工作流程中均可使用。
上游-将当前分支推回到通常将其更改集成到当前分支中的分支(称为@ {upstream})。仅当您推送到通常从中提取的同一存储库(即中央工作流)时,此模式才有意义。
简单-在集中式工作流程中,如果上游分支机构的名称与本地分支机构不同,则可以像上游那样工作,并增加了安全性,可以拒绝推送。
当推入与您通常从中拔出的遥控器不同的遥控器时,请以当前方式工作。这是最安全的选择,适合初学者。
该模式将成为Git 2.0中的默认模式。
匹配-在两端推送具有相同名称的所有分支。这使您要推送的存储库记住将要推出的分支集(例如,如果您始终将maint和master推送到那里,而没有其他分支,则推送到的存储库将具有这两个分支,以及本地的maint和master将被推到那里)。
为了有效地使用此模式,必须确保在运行git push之前已准备好将要推出的所有分支都推出,因为此模式的要点是允许您一次推送所有分支。如果通常只在一个分支上完成工作并推出结果,而其他分支还没有完成,则此模式不适合您。同样,此模式也不适合推送到共享中央存储库中,因为其他人可能会在其中添加新分支,或在控件外部更新现有分支的尖端。
当前是默认设置,但是Git 2.0会将默认设置更改为simple。