0

此处找到的拉取请求中,我们可以在文件中看到

/java/org/wso2/carbon/analytics/apim/internal/TemplateManagerInitializerComponent.java

38,39 和 40 行已被删除。现在我需要确定将这些行(已删除的 38,39 和 40 行)添加到文件中的提交哈希(散列),但此处显示的文件的责备视图不显示已删除行的历史记录。如何从 github 获取这些信息。提前致谢

4

1 回答 1

0

尝试git log -S <string>

git log -S "import javax.xml.bind.JAXBException"

引用 doc ( git help log) about-S和它的表弟-G

-S<string>
寻找改变文件中指定字符串(即添加/删除)出现次数的差异。供脚本编写者使用。

当您正在寻找一个确切的代码块(如结构)并想知道该块自它首次出现以来的历史时,它很有用:迭代地使用该功能将原像中有趣的块反馈回-S,然后继续,直到你得到第一个版本的块。

-G<regex>
查找补丁文本包含匹配的添加/删除行的差异<regex>

为了说明 和 之间的区别-S<regex> --pickaxe-regex-G<regex>请考虑在同一文件中具有以下差异的提交:

+    return !regexec(regexp, two->ptr, 1, &regmatch, 0);
     ...
-    hit = !regexec(regexp, mf2.ptr, 1, &regmatch, 0);

虽然git log -G"regexec\(regexp"将显示此提交,
git log -S"regexec\(regexp" --pickaxe-regex但不会(因为该字符串的出现次数没有改变)。

有关更多信息,请参阅 gitdiffcore(7) 中的镐条目。

于 2017-02-22T11:13:42.367 回答