如何在我的Git远程分支中搜索添加了特定行或两行代码的提交(不仅仅是文件,还有其中的内容)?
我的回购都在github上。
答案 0 :(得分:3)
git blame
是否符合您的需求?您可以在特定版本上运行它(与它是否在遥控器上无关,请参阅How to 'git blame' on the remote-side repository?)。
例如:
$ git blame master file_in_question.c
$ git blame 20f89e16 file_in_question.c
此外,如果您的存储库位于GitHub上,如果您愿意,可以使用他们的接口git blame
。见"Using git blame to trace changes in a file"
答案 1 :(得分:2)
除了使用git blame
之外,您还可以使用
git log -S<search-string> --source --all
它也可以搜索您当地的远程跟踪分支机构,但我不确定。当然,您可以随时只创建远程分支。有关详细信息,请参阅git: finding a commit that introduced a string。
您还可以使用正则表达式版本(请参阅git log
docs):
-G<regex>
查找添加或删除的行与给定
<regex>
匹配的差异。