1. 程式人生 > >git push.default設置

git push.default設置

ted csdn 老版本 specified 相同 def nbsp 8.4 cto

轉自:http://blog.csdn.net/daijingxin/article/details/51326715

在進行一次空倉庫的提交時,我遇到了這個警告

警告如下:

warning: push.default 未設置,它的默認值將會在 Git 2.0 由 ‘matching‘

修改為 ‘simple‘。若要不再顯示本信息並在其默認值改變後維持當前使用習慣,

進行如下設置:

git config --global push.default matching

若要不再顯示本信息並從現在開始采用新的使用習慣,設置:

git config --global push.default simple


參見 ‘git help config‘ 並查找 ‘push.default‘ 以獲取更多信息。
(‘simple‘ 模式由 Git 1.7.11 版本引入。如果您有時要使用老版本的 Git,
為保持兼容,請用 ‘current‘ 代替 ‘simple‘ 模式)

No refs in common and none specified; doing nothing.
Perhaps you should specify a branch such as ‘master‘.

fatal: The remote end hung up unexpectedly

Gogs: Internal error

Failed to execute git command: exit status 128
error: 無法推送一些引用到 [email protected]:daijingxin/addressbook.git‘
git push.default設置

October 31, 2013GNU/LinuxDebian, Gitopenwares



當然首先我要先說明一下我電腦上git的版本,如下:


$ git --version

git version 1.8.4.rc3

之後我查找了一些關於git push.default設置的知識。

默認配置下,當使用git push命令而沒有明確的指名本地分支和遠程參考分支的情況下,會有如上的提示。

如果git push命令沒有明確指定引用規格(refspec),也就是沒有指定推送的源分支和目標分支,那麽git會采用

push.default定義的動作。不同的值適用於不同的工作流程模式。

顯而易見,主要是因為之前沒有進行設置引用規格才出現的這種問題,現在我把push.default的可用值與配置方法貼在下面。


push.default可用的值如下:

1.nothing

不推送任何東西並有錯誤提示,除非明確指定分支引用規格。強制使用分支引用規格來避免可能潛在的錯

誤。

2.current

推送當前分支到接收端名字相同的分支。


3.upstream

推送當前分支到上遊@{upstream}。這個模式只適用於推送到與拉取數據相同的倉庫,比如中央工作倉庫流

程模式。

4.simple

在中央倉庫工作流程模式下,拒絕推送到上遊與本地分支名字不同的分支。也就是只有本地分支名和上遊分

支名字一致才可以推送,

就算是推送到不是拉取數據的遠程倉庫,只要名字相同也是可以的。在GIT 2.0中,simple將會是push.default的默認值。

simple只會推送本地當前分支。

5.matching

推送本地倉庫和遠程倉庫所有名字相同的分支。

這是git當前版本的缺省值。


一般來說我們使用simple就可以進行正常的使用,如果嚴格一點兒可以用nothing。

配置push.default的命令如下:

git config --global push.default simple

git push.default設置