我在GitHub上看到了一个无法编辑的维基页面。然后我把这个项目分叉了,把它编辑成“我的结局”;然后尝试做一个拉请求。结果是,维基不在项目中,并且没有办法向它提交更改。
除了电子邮件,在这种情况下,如果我想在维基上提出修改建议,还有什么办法吗?
在这一点上,我发现什么似乎是一个替代下的"问题与类似的标题",但我不能做拉请求与它还,所以我不确定子模块是一个很好的方式为这个目的。我现在觉得我可以用某种方式把它分叉……这是正确的方法吗?
GitHub 不支持对wiki存储库的拉取请求,只有主库(这是一个有点遗憾,IMO,但我能理解它)。
这里有一个有趣的方式,一个项目管理社区更新到他们的维基,同时仍然保持严格的控制,如源代码:
我建议的工作流程如下: 在你的Github账户上手动创建一个Taffy wiki的分支: 在你的github帐户上创建一个新的存储库。我们叫它“太妃维基”吧。 将Taffy wiki回购复制到您的本地机器:git clone git@github.com:atuttle/Taffy.wiki.git 删除原来的“origin”远程,并添加你的github回购作为新的“origin”git remote rm origin和git remote add origin git@github.com:<YOUR_USERNAME>/Taffy-Wiki.git 李< / ul > < / > 在本地进行建议的更改,然后将它们推送到你的github帐户:git push -u origin master ('-u origin master'只需要第一次;之后只需执行git push) 向官方太妃糖问题跟踪器提交一张票,要求我审查您的更改并将其合并。请务必包括一个链接到你的回购,并描述你改变了什么。 转到# 2
我建议的工作流程如下:
git clone git@github.com:atuttle/Taffy.wiki.git
git remote rm origin
git remote add origin git@github.com:<YOUR_USERNAME>/Taffy-Wiki.git
git push -u origin master
git push
(从您如何为Taffy文档做出贡献 . . .)。
如果是我,我会在主存储库(也就是你分叉的那个)中创建一个问题,建议对wiki进行更新。如果不启用问题,那么电子邮件是我能想到的唯一其他选择。
如果你可以有一个单页长的文档(实际上我更喜欢它),你可以劫持README.MD并把维基的内容放在那里。
README.MD
它不仅将作为正常存储库的一部分被跟踪,而且还将显示在主页上。
它可以从一个快速的参考开始,然后进入更详细的描述/说明,这样普通用户就会首先接触到更一般的信息。
我对此采取了不同的方法,即将完全相同的内容推送到主repo和wiki中。这可能不符合每个人的口味,但Risk-First主要是一个wiki,在主库中有一些变身怪医页面。
这意味着拉请求/fork过程工作正常。然而,在合并了一个pull-request之后,我必须做额外的一步,拉到我的本地存储库,然后推到主存储库和wiki, Git很好地支持多个原始url:
localhost:website robmoffat$ git remote show origin * remote origin Fetch URL: git@github.com:risk-first/website.git Push URL: git@github.com:risk-first/website.wiki.git Push URL: git@github.com:risk-first/website.git HEAD branch: master
为了实现这一点,我合并了两个存储库的提交,如下所示:
如何合并两个Git存储库?< / >
然后像这样推送到两个存储库:
Git -将代码推到两个遥控器
你不能做一个拉请求,但你可以打开一个问题,粘贴一个链接到你的维基页面,让他们合并在你的维基页面到他们的维基页面。
他们只需要克隆你的wiki页面存储库,(git clone YOUR_FORKED_REPO.wiki.git),把你所有的wiki提交压缩成一个大的提交,然后把这个大的压缩提交选择到他们的存储库中。这将把你所有的wiki更改带入他们的wiki。
git clone YOUR_FORKED_REPO.wiki.git
(从< <强>复制/强> Larry Botha的GitHub gist 在这里: 从分叉的GitHub存储库合并wiki更改):
合并来自分叉GitHub回购的Wiki更改 这是受到Roman Ivanov的如何合并GitHub维基更改从一个存储库到另一个的启发(或基本复制),并用于确保如果原始文章发生了什么事情,信息在这里保持良好和安全。 术语 OREPO:原始回购-由所有者创建或维护的回购 FREPO: fork repo可能已经更新了它的wiki,但还没有在OREPO上更新 贡献 如果你想对你已经分叉的回购的wiki做出贡献,请执行以下操作: 回购分叉 只克隆wiki到你的机器: 李$ g clone [FREPO].wiki.git < / > 对本地的fork wiki repo进行更改 将您的更改推送到GitHub 一旦你准备好让作者知道你做了修改,请执行以下操作: 在OREPO上打开一个问题 提供一个直接链接到你的wiki的git回购,以方便合并: 李。[FREPO] .wiki.git < / > 合并的变化 作为OREPO的所有者,你现在收到了一条消息,告诉你的wiki在其他人的FREPO上有更新。 如果wiki更改是从最新的OREPO wiki派生出来的,你可以执行以下操作: $ git clone [OREPO].wiki.git $ cd [OREPO].wiki.git # squashing all FREPO changes $ git pull [FREPO].wiki.git master $ git push origin master 如果OREPO wiki在FREPO fork的前面,执行以下操作: $ git clone [OREPO].wiki.git $ cd [OREPO].wiki.git $ git fetch [FREPO] master:[FREPO-branch] $ git checkout [FREPO-branch] # Check out to last OREPO commit $ git reset --hard [last-OREPO-commit-hash] # Do massive squash of all FREPO changes $ git merge --squash HEAD@{1} $ git commit -m "Wiki update from FREPO - [description]" $ git checkout master # Cherry-pick newly squashed commit $ git cherry-pick [OREPO-newly-squashed-commit] $ git push
这是受到Roman Ivanov的如何合并GitHub维基更改从一个存储库到另一个的启发(或基本复制),并用于确保如果原始文章发生了什么事情,信息在这里保持良好和安全。
OREPO:原始回购-由所有者创建或维护的回购
FREPO: fork repo可能已经更新了它的wiki,但还没有在OREPO上更新
如果你想对你已经分叉的回购的wiki做出贡献,请执行以下操作:
$ g clone [FREPO].wiki.git
一旦你准备好让作者知道你做了修改,请执行以下操作:
作为OREPO的所有者,你现在收到了一条消息,告诉你的wiki在其他人的FREPO上有更新。
如果wiki更改是从最新的OREPO wiki派生出来的,你可以执行以下操作:
$ git clone [OREPO].wiki.git $ cd [OREPO].wiki.git # squashing all FREPO changes $ git pull [FREPO].wiki.git master $ git push origin master
如果OREPO wiki在FREPO fork的前面,执行以下操作:
$ git clone [OREPO].wiki.git $ cd [OREPO].wiki.git $ git fetch [FREPO] master:[FREPO-branch] $ git checkout [FREPO-branch] # Check out to last OREPO commit $ git reset --hard [last-OREPO-commit-hash] # Do massive squash of all FREPO changes $ git merge --squash HEAD@{1} $ git commit -m "Wiki update from FREPO - [description]" $ git checkout master # Cherry-pick newly squashed commit $ git cherry-pick [OREPO-newly-squashed-commit] $ git push
到目前为止,我们已经在https://devonfw.com中找到了该问题的最佳解决方案:
因为我们是100%的OSS,我们喜欢分享我们的努力来实现这个伟大的解决方案。下面是一些链接作为例子:
GitHub现在支持这一点,你可以在添加或编辑wiki页面找到详细信息。
它被视为“正常的”;仓库现在,与分支,把请求,提交等。