克隆GitHub存储库并合并所有Pull请求

时间:2017-01-29 22:16:23

标签: git github

以下是我要使用的存储库 - https://github.com/Sumi-Interactive/SIAlertView

克隆此GitHub存储库并将该存储库上的所有36个开放拉取请求合并到我刚刚克隆的那个中的最佳方法是什么?

2 个答案:

答案 0 :(得分:2)

这可以达到你想要的效果。克隆远程,配置提取请求,然后合并每个PR分支。

然而,分支机构之间存在冲突。他们以不同的方式更改相同的文件。因此,将所有这些合并在一起并非易事。因此脚本失败了。

#!/usr/bin/env bash

set -e

git clone https://github.com/Sumi-Interactive/SIAlertView
cd SIAlertView

git config --add remote.origin.fetch "+refs/pull/*/head:refs/remotes/origin/pr/*"
git fetch

for branch in $(git branch -r); do
    [[ $branch =~ origin/pr/ ]] && git merge $branch
done

答案 1 :(得分:0)

浏览它们,查看它们,如果通过审核,请单击合并按钮。如果它没有评论并自行修复或等待贡献者修复它。

你不想自动化这一点,拥有公关的重点是有人评论它。如果你自动接受它就会失败。如果你不想审查PR,那么完全跳过它们,并让贡献者有权推动掌握(可能不是一个好主意)。

您似乎没有Continuous Integration Testing的PR,因此您甚至不确定PR是否有效。即使他们单独工作,也不能保证他们一旦被砸在一起就会全部工作。 master将是一团糟。

并且有36个同时发布的PR很有可能盲目地合并所有这些将导致冲突(或更糟糕的是,默默地覆盖彼此的变化)。您需要智能地集成它们。

现在,您宣传您的项目是盲目接受PR,恶意攻击者很容易将恶意软件插入您的项目。

更好的方法是找几个人来帮助进行审核和整合。这可能是非官方的,只是请一些人对PR进行评论,或you can use Github's review process