最近使用git跟gerrit及在idea中的坑

1. [remote rejected] master -> master (prohibited by Gerrit: ref update access denied)

或者[remote rejected] master -> master (prohibited by Gerrit: create access denied for refs/heads/master)

解决办法:

git config remote.origin.push refs/heads/*:refs/for/*

如果该命令不能解决。可以尝试git config remote.origin.push refs/heads/master:refs/for/master 或者换成分支名称

2. ! [remote rejected] master -> refs/for/master (you are not allowed to upload merges)

解决办法:

git stash

git pull --rebase

git push

git stash pop

3. Push failed: Failed with error: ssh variant simple does not support setting port

解决办法:

git config --global ssh.variant ssh

4. ! [remote rejected] dev -> refs/for/dev (no new changes)

一般是因为合并了主干代码,没有生成commit_id造成

解决办法:

git commit --amend

另外可参考:

5. 如果上面4个命令还是不能解决问题,就使用:

git reset HEAD~

上面这句copy全,废弃本地的上一个commit操作的意思,然后再更新代码,重新提交

6. 另外附上git配置查询:

经验分享 程序员 微信小程序 职场和发展