我是第一次使用 GitLab 用户,在审查某人的合并请求时有点困惑。每当我添加评论时,我都会收到 2 个选项[Submit review]和[Add comment now].
2者有什么区别?为什么需要2个选项?
如何在 GitLab Premium 中设置默认审阅者?
\n我Settings \xe2\x86\x92 General只有Merge request (MR) approvals审稿人,没有审稿人。
在合并检查设置中,我启用了“管道必须成功”选项:
但是没有任何作业的分支会因为“等待管道状态”而陷入合并状态,并且如果没有成功的管道,则无法合并。
我可以仅对某些特定分支(例如 master/生产)启用“管道必须成功”选项吗?
我有一个分支feature/xyz-functionality,我想与develop分支合并。我是在 3 天前创建的,我没有合并的权限。
另一方面,我的团队负责人忙于其他事情,在此期间我编写了更多需要推送的脚本,因为我创建了合并请求,我害怕推送提交。
那么什么是好的做法,我应该推动提交呢?我可以吗?或者我应该创建新分支然后推送它?
请指导我,我将不胜感激。非常感谢。
我是分支和 git 工作的新手。
我开发了一些测试用例并创建了新分支来推送该分支中的更改,并在 GitLab 中打开了一个合并请求以合并到 master 分支中。
PR 之后,我的审阅者强调了一些代码重构和其他细微更改。
现在,我已经进行了这些更改,并且合并请求仍然处于开放状态。如何将新的更改/提交推送到已打开的合并请求?
我相信这是一个愚蠢的问题,但我不明白我应该如何使用gitlab 合并请求推送选项
我有这样的场景:
git add .
git commit -m 'finish mr'
git push origin develop -o merge_request.merge_when_pipeline_succeeds
Run Code Online (Sandbox Code Playgroud)
@user aborted the automatic merge because source branch was updated just now
@user added 1 commit just now
8efdbde1 - finish mr
Run Code Online (Sandbox Code Playgroud)
因此,推送似乎会将 MR 设置为允许成功后合并,并由于同一推送的提交而立即中止它。我还尝试使用 /merge 进行快速操作,但结果相同。我知道有gitlab API,但我不能使用它。有谁知道我做错了什么?
编辑:
作为接受的答案建议添加目标分支有帮助,但我还需要添加ci.skip:
git push origin $CI_COMMIT_REF_NAME \
-o ci.skip \
-o merge_request.target="$MASTER_BRANCH_NAME" \
-o merge_request.merge_when_pipeline_succeeds \
-o merge_request.create
Run Code Online (Sandbox Code Playgroud) 在我们使用 GitLab 的开发中,当功能分支合并到主分支中时,我们通常会压缩它们的提交(如果重要的话,我们使用变基策略而不是合并)。
但是,如果来自功能分支的提交被压缩为单个提交(稍后合并到主分支中)并且分支本身被删除,GitLab 如何仍然显示原始提交?它们是永远保留在存储库中还是最终被删除只是时间问题?
我相信 GitLab 在存储库上做了一些垃圾收集,但我想知道为什么它不影响 MR 的提交。
我们有 monorepo,我的团队负责存储库的 20 个包/文件夹中的 3 个,但有时我们需要接触其他包/文件夹。为了查看团队成员的更改,每个成员都应该添加“team_label”,以便能够通过此标签进行过滤,或者为每个作者/团队成员保持打开多个带有合并请求的选项卡。
最好是由作者之一过滤 MR:
作者:用户名1或作者:用户名2或作者:用户名3
我们使用的是 GitLab 企业版 12.6.2-ee
upd:在 gitlab 文档评论中讨论过,即使使用高级搜索也无法过滤合并请求
高级搜索目前没有您在专用问题或 MR 搜索中使用的构面
https://docs.gitlab.com/ee/user/search/index.html#comment-4776091890
功能提案:
我们的项目使用 Gitlab,并且有两个长期存在的分支:dev 和 master,类似于 Git Flow。我们使用“合并提交”方法,它将在主分支中创建合并提交。
然而,由于这些“合并提交”,主分支将始终领先于开发分支。
所以,我的问题是,我应该将这些“合并提交”合并回开发分支吗?为什么?
我已经创建了一个基础存储库并向我的朋友发送了成为我的项目合作者的请求。他分叉了我的存储库并在那里做了一些更改。然后他为我创建了一个拉取请求来合并他所做的更改。但与此同时,他还可以选择在未经我许可的情况下将更改合并到基本存储库(即我的存储库)。我怎样才能限制它?我的意思是如何只能合并请求而不是我的所有团队成员。
实际上,我已经在一台电脑上尝试过,我在浏览器上打开了主帐户,在隐身选项卡上打开了另一个帐户。并创建了从我的另一个帐户到主帐户的拉取请求,但在我的另一个帐户中,我可以选择将更改合并到我的主帐户的基本存储库,当我这样做时,更改也会反映到我的主帐户 GitHub 存储库。
帮我修一下。如果我在某个地方错了,请告诉我我的朋友只能创建拉取请求的过程,我会在检查后合并它们。