gpt4 book ai didi

git - 我如何找到哪个提交在 git 中引入了特定行?或者有更好的选择吗?

转载 作者:太空狗 更新时间:2023-10-29 13:17:06 26 4
gpt4 key购买 nike

想象一下 git 项目中的一个类已经经历了 1000 次提交,一遍又一遍地重新访问。我是否有机会检查特定代码行的确切时间(在哪个提交时)被引入到类中?

如果没有,是否有替代方法可以在每次提交时找到我特别感兴趣的行集?

是的。

最佳答案

特定的代码行?就像你事先知道线路是什么?当然有可能。事实上,这很容易。只需在 git log 上使用镐搜索选项:

-S<string>
Look for differences that introduce or remove an instance of <string>. Note that this is different than the string simply appearing in diff output;
see the pickaxe entry in gitdiffcore(7) for more details.

假设该类是 public class Foo {,您可以找到每个触及该字符串的提交:

git log -S"public class Foo"

如果你想限制它到一个特定的文件,只需使用标准的--语法:

git log -S"public class Foo" -- Foo.java

一般来说,使用这个:

git log -S<string> [-- <file>]

关于git - 我如何找到哪个提交在 git 中引入了特定行?或者有更好的选择吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12005075/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com