2013-03-27 101 views
4

雖然與格里特工作,預計push是:如何禁用直接推送到Gerrit?

git push origin HEAD:refs/for/branch 

但有些壞人,似乎這樣做以簡單的方式(他們和一些Git的人工學):

git push origin 

git push 

這些操作會造成嚴重問題:

  • 提交直接合併到遠程服務器的主(或某個默認)分支中。
  • 雖然傢伙寫了一些提交信息,但git log不能找到它們。
  • 也許更多...

是否有一種方法來禁用格里特設置這些push操作?或者在客戶端禁用它?

回答

4

Gerrit管理界面有權限。權限是從All-Projects項目繼承的。看看那裏(管理員=>項目=>所有項目=>訪問),並刪除推到主人的權利。在這裏的文檔中的更多細節:Access control

+0

我的意思是大多數時候,人們'推'''refs/for/master'。但是如果沒有輸入'HEAD:refs/for/master',提交會自動合併到master中,並且沒有記錄日誌。那就是問題所在。 – coanor 2013-03-28 08:30:37

+0

如果你阻止向'master'右移,但是允許'refs/for/master',那麼你的問題就會解決 – rcomblen 2013-03-28 09:42:43