37

我在 git 上提出了拉取请求(使用“xcodeproj/project.pbxproj”文件 - 我的错),那么我可以从创建的拉取请求中删除这个文件吗?谢谢..

4

7 回答 7

39

您可能会将这个拉取请求合并到 master 上,因此您可以在您的分支上再次从 master 签出这个特定文件,只需键入:

git checkout master -- xcodeproj/project.pbxproj
git commit -m "removing a file from PR"
git push origin {YOUR BRANCH}
于 2016-05-09T17:52:42.467 回答
27

另一种解决方案是

  • 通过删除文件、使用amendrebase git 功能在本地重写您的提交
  • 强制将您的分支推送到您的 GitHub 存储库

这将通过仅显示刷新的提交来更新拉取请求。

于 2012-02-29T11:58:52.750 回答
22
  • 提交删除此文件并推送它。
  • 转到你的 fork 的 Github 页面,然后再次单击Pull Request。您将收到一条消息,说明您已经有一个拉取请求,并且您可以调整它的提交范围。
  • 包括您的新提交(带有删除)。

请注意,有问题的文件仍将位于要合并的变更集中,因此如果它包含敏感数据,最好关闭拉取请求并首先从 fork 的存储库中清除该文件。Github 帮助描述了如何做到这一点。

于 2012-02-29T11:30:56.820 回答
4

要从 PR 中删除文件:

git rm path/toFile/youwantRemovedOffyour/PR
git commit -a
git push

要从 PR 中删除目录:

git rm -r path/toFiles/youwantRemovedOffyour/PR
git commit -a
git push
于 2020-01-27T20:08:12.270 回答
3

新方法,自 2018 年 7 月起:

从拉取请求中删除文件

以前,如果您想使用 GitHub 从拉取请求中删除文件,则需要切换到拉取请求分支并查找单个文件以将其删除。

现在,如果您有写入权限,您可以在拉取请求的“文件已更改”视图中单击文件的“垃圾箱”图标以进行提交并将其删除

警告:正如RCM评论中确认的那样:

它确实删除了文件

这并不意味着它会删除您对文件的更改。
在我看来,这是相当具有欺骗性的措辞。

于 2018-08-08T20:39:17.473 回答
1

原因:也会删除本地文件。当您推送自动生成的文件时适用。

git rm <path to file>
于 2018-04-11T21:19:11.637 回答
0

如果您只想删除(删除)已经是拉取请求一部分的文件的变更集,那么目前您无法通过 Web UI 执行此操作。您必须在本地更新文件并对 PR 执行 git push。

于 2019-02-21T05:33:30.820 回答