2015-01-16 32 views
0

我有一個本地git存儲庫,需要將註釋標籤推送到遠程,但命令git push --tags失敗,並顯示以下錯誤:「致命:遠程錯誤:拒絕訪問或存儲庫不輸出」不能推送標籤使用git push --tags並需要幫助調試

注:這是一個跟進這個問題:original

這是一個Android操作系統的項目,所以我們使用回購工具來管理數十個倉庫的以及用於代碼審查的gerrit工具。正常的工作流程正常工作的意思是我可以修改代碼,上傳,審覈,批准等,但只有標籤給我的問題,所以我認爲我的網絡/用戶權限沒問題。這個項目是我繼承的東西,所以我沒有設置它,並且對git/gerrit/repo等是非常新的。

花了一些時間在這之後,我認爲可能發生的事情是我們的git服務器配置爲不允許從gerrit「用戶」除外,並且我們使用repo upload將修改提交給gerrit,並且在批准時它是gerrit執行推送。這只是一個剛剛開始看到這個並可能完全愚蠢的人的猜測。

無論我的猜測是否正確......我仍然不確定該怎麼做。

+0

你有我的答案中列出的所有權限[原始問題](http://stackoverflow.com/questions/27911273/how-do-i-upload-tags-to-gerrit-using-repo)?我剛剛更新了一些附加權限的答案。 –

+0

我試圖添加正確的權限,但仍然沒有成功。以下是我的gerrit訪問快照:https://dl.dropboxusercontent.com/u/86741684/gerrit.png – Jason

+0

我沒有在任何地方看到Forge Committer Identity。 –

回答

0

您必須具有refs/tags/*訪問權限才能將標籤推送到您的存儲庫。這個權限可以在Gerrit中配置。要求您的SCM在一個組中添加您的帳戶,並允許此組中的成員將標籤推送到資源庫(使用refs/tags/*訪問權限)。當然,這些標籤不會通過審覈程序。

+0

我試圖添加正確的權限,但仍然沒有成功。以下是我的gerrit訪問快照:https://dl.dropboxusercontent.com/u/86741684/gerrit.png – Jason

+0

快照顯示您的權限適用於推送帶註釋的標籤。我也有Android OS項目和git/repo/gerrit作爲你的情況。通常我用命令推送一個標籤:$ git push 。如果每個git存儲庫都有標籤推送,使用repo爲所有git存儲庫執行git命令:$ repo forall -c'git push '。你會試着先推一個標籤嗎?看看它是否有效。我沒有使用「$ git push --tags」,因爲我不確定所有本地標籤都應該推送到服務器。 – Carefing