首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该如何为一个(大部分)废弃的GitHub项目做出贡献?

问我应该如何为一个(大部分)废弃的GitHub项目做出贡献?
EN

Software Engineering用户
提问于 2015-02-13 18:24:11
回答 2查看 4.9K关注 0票数 50

最近,我一直在尝试在GitHub中进行开源协作,并且遇到了这样一种情况:我想知道什么是最好的方法。

大约一个月前,我在GitHub上为一个已经使用了一段时间的库找到了一个项目,并在其中发现(并修复)了一些bug。

作为对GitHub协作的一次初步尝试,我发现回购似乎是最近活动量最大的,修复了一个bug,添加了单元测试,推到了GitHub,并发出了一个拉请求。在几个小时内,我分叉的回购员已经接受了公关,并从其他等待的人那里合并了其他几个PRs。

在此激励下,我又修复了我发现的另外三个bug,每个bug位于我自己的回购程序的一个独立分支中,并分别提交了一个问题并对每个错误进行了请求。

那是一个多月前的事了,从那以后,拉力请求就一直在那里,没有被碰过。用户的回购我分叉似乎不是很活跃,在过去的一年里只在GitHub上做了7次总贡献,而且那个回购没有任何提交,自从我第一次请求拉请求。

所以我的问题是:

在这种情况下,如何进行呢?理想情况下,我希望避免创建库的碎片,方法是在我自己的回购中进行大量没有合并到父回购中的更改。尽管如此,我还是想继续进行bug修复和添加特性,但是如果我将所有内容合并到我的主分支中,并将所有新的修复程序都从该分支中删除,那么如果我分叉的回购程序的维护人员真的回来了,我将无法将所有的更改拆分为针对每个特性/ bug修复的单独的拉请求(我已经阅读过每个特性或bug修复通常应该是一个拉请求)。

我是否应该保持一个与原始回购一致的分支,将我所有的新分支建立在该分支之上,然后将所有提交合并到我的主分支中?这似乎会给我留下一整吨的分支和越来越繁重的任务,每次我需要将新的变化合并到我的主分支。

一个人对待这种情况的典型方式是什么?似乎是相当普遍的,一个项目将被抛弃,与原来的贡献者,而不是审查新的拉请求。在这种情况下,有人应该直接掌舵并执行吗?如果最初的贡献者返回并想要再次工作的话,它似乎会产生碎片。

EN

回答 2

Software Engineering用户

回答已采纳

发布于 2015-02-13 21:15:07

我还没有遇到过这种情况,但我会尝试这样做:

尝试与所有者

联系

也许他们真的失去了兴趣,但他们愿意把这个项目转让给其他人,特别是那些已经表现出体贴承诺的人。

但也许他们只是忙于其他事情(工作,假期,疾病,其他项目),没有时间处理你的公关,但计划在以后这样做。

或者他们真的因为任何原因而永久停止了这个项目的工作。

如果你不问,你就不会发现。

与社区

取得联系

当然还有其他人为这个项目做出了贡献,或者至少使用了这个项目。检查谁已经分叉了项目(即使他们没有做任何更改,他们可能仍然有兴趣看到这个项目蓬勃发展);检查谁报告了问题,或者评论了他们。也许在GitHub之外也有一个社区,例如邮件列表、论坛或StackOverflow成员。

我是你最终真的接管了这个项目,你可能需要他们的支持。他们需要知道新的主存储库在哪里。

继续发出很好的拉请求

这表明了业主和社区,你是认真的,让他们判断你的贡献。

票数 43
EN

Software Engineering用户

发布于 2019-06-16 18:24:17

由于现在大多数小型到中型的免费开放源码项目都托管在github、gitlab或类似的网站上,所以可以使用它们的Web来自动化一些过程。

假设原始回购是在https://github.com/someUserX/projectY/进行的,这个过程可能如下所示:

  1. (“手册”)以不同的方式联系原作者,至少通过他的git提交者电子邮件和一个问题(如果启用)。如果在几周内收到权限或没有响应,您可以运行一个脚本,该脚本将使用hosters执行以下步骤:
  2. 创建一个新的(GitHub)组织,名为projectY,其中叉出原始的回购-> https://github.com/projectY/projectY/
  3. 将原始作者和拉请求的所有作者(已合并且仍处于打开状态)添加为组织管理员
  4. 重新创建新叉中原始回购的所有(打开)拉请求。
  5. 对(公开的)问题也做同样的处理
  6. 将新回购通知所有管理员。
  7. 创建对旧回购的最后拉请求,添加“废弃”/“归档”通知,并链接到自述之上的新回购
票数 2
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/273156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档