git - 搜索特定的提交

标签 git

我正在处理一个混合了 C++ 代码和 HTML 模板文件的大型项目。

我今天得知我应该将我对 C++ 文件所做的更改(并且只有那些) merge 到另一个分支上,但正如您可能猜到的那样:我不记得所有的提交我做到了。

有没有办法让我通过 git 历史搜索所有符合所有这些条件的提交?

  • 是我写的
  • 位于提交 A 和提交 B 之间
  • 包含对 .cpp.c.h 文件的更改(如果有帮助,这些文件位于特定的子目录中) .

最佳答案

我终于想出了如何做到这一点:

要搜索与特定作者匹配的提交,您可以使用 --author 选项:

git log --author=ereOn

要搜索从提交 AB 的提交,请使用 A..B 形式:

git log 9223253452..HEAD

最后,只关心涉及特定文件或路径的提交:

git log -- path_or_file

--用于指示可选参数的结束和位置参数的开始。

综合起来,得到:

git log --author=ereOn 9223a6d916c034345..HEAD -- cpp_folder/*

这就像一个魅力:)

关于git - 搜索特定的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12459440/

相关文章:

git - CircleCI过滤器 pull 请求

linux - 如何针对 Kerberos 跳过 Git 的密码输入?

windows - Windows 上不区分大小写的 .gitignore - 一个问题

git - Maven Release Plugin 在 Jenkins Pipeline 中的使用

python - 如果我正在制作 pip 模块,需要上传或添加哪些文件到 git 存储库

Github pull 请求模板未显示

git - 如何更新 repo 版本

java - Maven thrift 插件 - 如何包含 thrift 定义?

git checkout 某些文件尽管有冲突

git - 为不同的构建 react native 项目自定义包名称