拉取 gerrit 空項目,初次 push 問題
管理員在 gerrit 創建了個新的倉庫(空的),我本地拉取下來在首次推送的時候遇到了一些問題,記錄一下。
由於遠程倉庫是個空倉庫,所以clone時並沒有檢出 origin/master,本地master分支並不知道關聯哪個遠程分支,所以需要手動指定關聯關係。
指定本地master關聯遠程origin/master
git branch --set-upstream-to=origin/master master
初次推送(push)
git push --set-upstream origin master:refs/for/master
- 推送操作(push)
git push origin HEAD:refs/for/master
在倉庫根目錄執行此命令,之後push 操作可以直接使用git push
git config remote.origin.push refs/heads/*:refs/for/*
ERROR:missing Change-Id in commit message
原因:某個 commit 缺少 changeId 信息,gerrit 不允許push。
解決:回滾到沒有changeId的 commit 版本,執行如下命令,會給 commit 生成一個 changId
git commit --amend --no-edit
提交信息與gerrit配置的郵箱不一致,無法失敗
reference:https://blog.csdn.net/oximing1/article/details/51200911