我正在寻找一种通过 GitHub 设置或 CircleCI 设置阻止参与 PR(创建 PR 或提交)的人能够合并 PR(甚至批准它)的方法。到目前为止,我有一个需要批准的分支的保护,但批准后我作为 PR 创建者和提交者我仍然能够合并。
我是一个小型分布式团队,使用Mercurial作为中央存储库.我们每个都通过ssh将它克隆到我们自己的linux盒子上.我们的目的是在将更改推送到中央存储库之前检查彼此的工作,以帮助保持中心的提示清洁.在不同的Linux机器上开发人员之间共享代码的好方法是什么?我是Mercurial的新手.我能想到的选择(通过阅读,而不是经验)是:
1:作者提交所有本地更改并使用中心提示更新工作克隆.作者使用hg bundle,如果有办法指定要包含在哪个本地转速中.(一个实验显示我"捆绑"只抓取未经修改的更改,即使之前有中央不知道的本地提交)作者将捆绑文件提供给审阅者.Reviewer从中心的提示创建一个新的干净克隆,并将该包导入该克隆.要么,
2:在作者和评论者从中心提示中获取后,作者使用补丁和审阅者导入补丁.要么,
3:作者推向审稿或审阅从笔者拉(但如何,正是我读什么是只是为了提升和从原来担任仓库拉到/和/或在同一个盒子,而不是不同的Linux框之间?).
4:忘记在推送到中心之前检查代码; 继续推进,使用标签来识别已经审查过的内容,并使用Hudson(已经工作)来标记最新的安全版本,以便团队成员可以知道从哪一个开始.
如果您的团队使用Mercurial并进行代码审核,您如何让审核人员查看您的更改?
我要把头发拉出来.
我已经从我的项目分支提交了一个拉取请求,回到了所有者/维护者的回购.在这个拉取请求中,出现了一些我必须根据新信息添加/更改的内容.我做了所说的更改,现在我正试图推送那个拉取请求.
根据Github的"问题"页面,在底部,它说我可以通过推送到abc123我的存储库分支上的分支直接提交提交问题(拉取请求).
问题是,当我这样做时,git push origin abc123我得到错误:
fatal: 5fa087b35cb8379f282174df2f4197ba258ffd05 cannot be resolved to branch.
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决这个问题.我应该关闭拉取请求并重新提交吗?或者有什么我做错了,还是我需要做的更多?
谢谢.
有没有办法在Jenkins中设置Findbugs(或任何其他静态代码分析工具)来分析传入的拉取请求并将结果与主分支进行比较?我的目标是拒绝拉取请求,这会增加静态代码分析问题的数量.
我想将我的回购更改为第一组.由于首先创建了我的仓库,因此通过导入创建了第一个团队.不幸的是,BitBucket不允许我为它创建PR(目标存储库的下拉只是我自己的repo).
为什么我不能指定另一个存储库?我必须分叉,让PR工作吗?毕竟,git root和commit history 是一样的,有效的PR需要源repo/branch和target repo/branch吗?
关于PR州的Atlassian文档:
您需要提供4条信息来提交拉取请求:源存储库,源分支,目标存储库和目标分支.
因此,没有必要提及远程信息,也没有提到拉取请求目的地的合格存储库.
此外:
Pull请求还可用于与官方项目之外的其他开发人员协作.例如,如果开发人员正在与队友一起处理某项功能,他们可以使用队友的Bitbucket存储库为目的地而不是官方项目提交拉取请求.然后,它们将对源和目标分支使用相同的功能分支.
这意味着我应该能够请求将我的更改提取到队友存储库.分叉存储库时是否存在一些秘密信息,当您复制/粘贴或从头开始克隆时,它不会被传递?我的意思是,只有遥控器浮现在脑海中,但在制作PR时设置遥控器并不是那么难.
咨询的Atlassian文档:
我试图在一个分支中压缩提交,当它最终合并到主服务器(在拉取请求后如果被批准)提交历史看起来很干净.在提出拉取请求之前我做了一个
git rebase -i
Run Code Online (Sandbox Code Playgroud)
并重写历史.
然而,当在其分支中开发该特征时,我必须将主内容合并到分支上,因为由于其他特征分支被合并,主人通常会向前移动.
我看到我合并master到feature分支我不能压缩他使用交互式rebase再提交.它在拉取请求期间导致异常差异,即作为来自主合并的合并的一部分而发生的变化.
在这种情况下,压缩提交的最佳方法是什么?
我在 Visual Studio 和 Azure DevOps 中使用 Git。我正在尝试完成拉取请求并更改票证状态。
目前,您可以通过选择“合并后完成链接的工作项”来完成此操作。问题是这将工单的状态设置为Done。
有没有办法在拉取请求完成时使用不同的选项设置票证状态?
在创建拉取请求时设置票证状态也很好......
我有一个案例,Github repo master 当前有一系列单独的拉取请求,这些请求已经合并到 master 中。我想恢复说最后 20 个拉取请求合并,但从命令行执行并保留历史记录。
类似的问题被标记为重复恢复多个合并
然而,已经存在的答案并没有真正解决当您想要恢复的所有内容都来自一系列全部合并的拉取请求时会发生什么的具体问题。将 -m 选项与 git revert 一起使用对于一次合并来说是有好处的,对吗?所以我认为答案是没有一个好的方法(从命令行)来快速恢复一系列已合并的单独拉取请求并保留历史记录?如果我对此有误,请纠正我。如果我必须一次执行一项操作,我不妨使用 Github 控制台,然后单击每一项的“还原”。
pull-request ×10
git ×7
github ×5
merge ×3
azure-devops ×1
bitbucket ×1
circleci ×1
findbugs ×1
git-diff ×1
jenkins ×1
mercurial ×1
protection ×1
rebase ×1
revert ×1