git - 为什么Gerrit无法自己创建分支?

标签 git version-control gerrit

正在关注 this answermy own question ,我有一个简单的(希望如此)问题。

如果我推送一个特定的分支,并正确设置所有必需的引用:

git checkout 82-blah-blah
git push origin HEAD:refs/for/82-blah-blah

为什么我总是得到:

! [remote rejected] HEAD -> refs/for/82-blah-blah (branch 82-blah-blah not found)

而且我总是必须转到 Gerrit 的 UI 并手动创建该分支?

这不是很明显的一步吗,Gerrit 可以简单地实现自动化?或者我错过了什么?

最佳答案

接受的答案指的是允许用户使用 SSH 创建分支的功能,它添加的只是 CreateBranchCommand .原文issue request可能实际上指的是@trejder 想要的,但实现只是通过 SSH 命令创建分支。

我的印象是,如果你有创建引用的权利,你就可以推送到 ref/for/new-branch,但我错了,只是测试了一下,它不起作用。它只允许您创建新分支但直接推送到它们。

猜猜完成它的最快方法是:

git checkout master
git push origin HEAD:new-branch
git checkout new-branch
git push origin HEAD:/refs/for/new-branch

关于git - 为什么Gerrit无法自己创建分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20606359/

相关文章:

version-control - Mercurial (hg) 仅提交某些文件

git - Jenkins 无法获取changeId 和revisionId

git - Gerrit 能否代替 Trac 进行问题跟踪和代码浏览

svn - Git 格式补丁与 svn 兼容?

java - 多模块(multi scm)gradle项目开发

linux - 在 Linux/Ubuntu 上的 Subversion 中提交更改的文件、添加新文件并省略一些文件到外部服务器

git - 将 Git 仓库转换为 Darc

git - 这些将现有 Git 存储库导入 GitHub 的方法有何不同?

git fetch 不下载远程分支

git - 如何将 Gerrit 分支 merge 到另一个 Gerrit 分支