好的,所以在这里,我有一个名为" New_Test_repo"我的网络上的开发人员将访问它。我的回购中有两个分支:掌握和开发。我有两个用户为管理员创建了一个用户,另一个用户是TestUser。此TestUser具有对开发分支的写入权限。所以现在我的问题是,当testuser完成开发并推送到我的" New_Test_repo"上的开发分支时,不应该创建一个拉取请求吗?
请注意,我已在我的repo上配置了pull requests设置,以便至少有1个审批者通过。我说得对吗?因为当我复制这个场景时,我发现没有创建拉取请求但是TestUser的提交被成功推送到中央仓库" New_Test_repo"认证后。
所以这是我的问题:为什么在这种情况下没有创建拉取请求?有人可以启发我吗?
答案 0 :(得分:0)
关于拉取请求的第一个解释......
当您提交拉取请求时,您所做的只是请求另一位开发人员将您的存储库中的分支拉入其存储库。在这种情况下,听起来像TestUser可以访问开发分支。这就是允许用户提交更改的原因。如果您现在想要创建拉取请求,请在Stash中执行以下步骤。独立于失败的合并,我不确定如何让Stash自动创建拉取请求。
答案 1 :(得分:0)
testuser是否创建了一个新分支,而不是在develop
分支中提交?至于我的理解,testuser需要从develop
创建一个不同的分支,并且已经分叉了你的repo。这是我熟悉的工作流程:
例如。 testuser clone并从develop
git clone http://user/some-repo.git
git checkout -b "feature/testuser"
git commit -am "lots of bug fixing."
然后testuser需要将分支推送到他/她自己的仓库,而不是你的。
git push origin feature/testuser
此外,testuser需要通过他/她自己的repo创建一个pull请求 然后由你审查。
以下是您参考的链接:
希望这会有所帮助。 :)
答案 2 :(得分:0)
为什么在这种情况下没有创建拉取请求?
因为TestUser在develop
分支上具有直接写权限。如果要要求用户发出更改请求,则需要不允许用户进行写入权限。 TestUser可以发出拉取请求,而不是直接推送到分支。拉请求基本上是在说“嘿,我有一些变化让你看看并决定是否接受它们。”另一方面,将提交直接推送到中央仓库是说“无论你喜欢与否,这都是我的改变。”