【问题标题】:How to download a single commit-diff from GitHub?如何从 GitHub 下载单个提交差异?
【发布时间】:2014-03-21 03:50:13
【问题描述】:

我想通过 Web 界面从 GitHub 获得一个提交(我们称之为 ${SHA})。

例如:

$ git clone http://github.com/foo/bar
$ cd bar
$ git format-patch -o .. ${SHA}~1..${SHA}
$ cd ..
$ rm -rf bar

...但不必克隆整个存储库(有问题的存储库很大)。

显然 GitHub 可以通过 Web 界面显示给定提交的差异,但我如何将其提取到(统一的)差异文件中(理想情况下,提交消息完好无损)?

【问题讨论】:

标签: github diff patch git-diff


【解决方案1】:

我发现我必须在末尾添加一个 /,即

https://github.com/foo/bar/commit/${SHA}.patch/

【讨论】:

【解决方案2】:

好的,我自己找到答案了。

.patch(或.diff)添加到提交URL 将提供一个不错的补丁:

https://github.com/foo/bar/commit/${SHA}.patch

感谢Ten Things You Didn't Know Git And GitHub Could Do...

【讨论】:

  • 我们可以在git apply命令中直接使用这个url吗?喜欢git apply <url.diff>
  • @DarshanL 好吧,这是一个完全不同的问题,关于git cmdline 工具的功能(并且超级简单的试用 ;-))并且与 github 无关(github 只是提供这样的文件;但是通过 http:// 提供的任何补丁文件都可以)-但是简短的回答可能是:否
  • 如果补丁在多个提交中完成,是否还有一种简单的方法来获取补丁? (而不是下载和应用几个补丁)
  • 如果你得到Content containing PDF or PS header bytes cannot be rendered from this domain for security reasons..patch,试试.diff。它对我有用。
猜你喜欢
  • 2020-09-05
  • 1970-01-01
  • 2013-08-10
  • 2012-11-18
  • 2011-06-04
  • 1970-01-01
  • 2021-04-16
相关资源
最近更新 更多