有没有办法列出所有更改了特定文件的提交?


#1楼

使用以下命令获取特定文件的提交:

git log -p filename

#2楼

正如jackrabb1t所指出的,-- --follow更加强大,因为它继续列出重命名/移动之外的历史记录。 因此,如果要查找当前不在同一路径中的文件,或者正在各种提交中重命名的文件,则--follow将对其进行跟踪。

如果要显示名称/路径更改,这可能是更好的选择:

git log --follow --name-status -- <path>

但是,如果您想要一个仅包含重要内容的紧凑列表:

git log --follow --name-status --format='%H' -- <path>

甚至

git log --follow --name-only --format='%H' -- <path>

缺点是--follow仅适用于单个文件。


#3楼

在Linux上,您可以为此使用gitk。

可以使用“ sudo apt-get install git-gui gitk”进行安装。 它可以通过“ gitk <Filename>”来查看特定文件的提交。


#4楼

gitk <path_to_filename>

假设软件包“ gitk”已经安装。

如果未安装,请执行以下操作:

sudo apt-get install gitk

然后尝试上面的命令。 它适用于Linux。。。如果需要GUI,它可能对Linux用户有所帮助。


#5楼

或者(自Git 1.8.4起),也可以只获取更改了文件特定部分的所有提交。 您可以通过传递起始行和结束行号来实现。

返回的结果将是修改此特定部分的提交列表。 命令如下:

git log --pretty=short -u -L <upperLimit>,<lowerLimit>:<path_to_filename>

其中upperLimitstart_line_numberlowerLimitending_line_number

更多信息-https: //www.techpurohit.com/list-some-useful-git-commands


#6楼

使用git log --all <filename>查看所有分支中影响<filename>的提交。


#7楼

如果您尝试- 跟随先前提交中使用的文件删除

git log --follow -- filename

#8楼

我一直在仔细研究,所有这些答案似乎并没有真正显示出所有分支机构的所有提交。

这是我通过弄乱gitk编辑视图选项得出的。 这向我显示了文件的所有提交,而与分支,本地,reflog和远程无关。

gitk --all --first-parent --remotes --reflog --author-date-order -- filename

它也可以和git log

git log --all --first-parent --remotes --reflog --author-date-order -- filename

#9楼

git log path应该做你想要的。 从git log man :

[--] <path>…Show only commits that affect any of the specified paths. To prevent confusion with
options and branch names, paths may need to be prefixed with "-- " to separate them
from options or refnames.

#10楼

它应该像git log <somepath>一样简单; 检查联机帮助页( git-log(1) )。

我个人喜欢使用git log --stat <path>因此我可以看到每次提交对文件的影响。


#11楼

如果要查看所有更改了文件的提交,请在所有分支中使用此命令:

git log --follow --all <filepath>

#12楼

# Shows commit history with patch
git log -p -<no_of_commits> --follow <file_name># Shows brief details like "1 file changed, 6 insertions(+), 1 deletion(-)"
git log --stat --follow <file_name>

参考


#13楼

如果要按filename不是 filename filepath查找所有提交,请使用:

git log --all -- '*.wmv'

#14楼

如果您希望查看在更改特定文件的提交中所做的所有更改(而不仅仅是对文件本身的更改),则可以传递--full-diff

git log -p --full-diff [branch] -- <path>

#15楼

--follow适用于特定文件

git log --follow -- filename

与其他解决方案的区别

请注意,其他解决方案包括git log path (不带--follow )。 如果要跟踪目录中的更改,该方法很方便,但是在重命名文件时会--follow filename (因此请使用--follow filename )。

如何列出更改了特定文件的所有提交?相关推荐

  1. 更改文件类型图标logo_如何在Windows中更改特定文件类型的图标

    更改文件类型图标logo In the Windows XP days, changing the icon for a specific file type-such as TXT or PNG-w ...

  2. linux查看特定文件的位置

    ubuntu如何查看特定文件的位置呢 这里我想更改一个依赖库的源码,但是不知道安装位置,命令如下: locate +文件名 locate pygad.py 结果如下: 即可.

  3. 如何将Git存储库克隆到特定文件夹?

    git clone git@github.com:whatever执行git clone git@github.com:whatever命令git clone git@github.com:whate ...

  4. 【转】grep搜索子目录中包含某字符串的特定文件

    比如,我想搜源码目录src下,包含"niuc"的所有ec文件 find ./src -name '*.ec' -exec grep -i niuc {} /; -print 在特定 ...

  5. 如何在 Windows XP 中设置、查看、更改或删除文件和文件夹的特殊权限

    为什么80%的码农都做不了架构师?>>>    文章编号: 308419 - 最后修改: 2005年10月24日 - 修订: 3.1 如何在 Windows XP 中设置.查看.更改 ...

  6. grep搜索子目录中包含某字符串的特定文件

    grep -n "str" -r ./ 这是查找当前目录下以及下辖子目录下所有包含str字符串的文件,会列出文件名.以及该行的内容.以及行号  ------------------ ...

  7. 2003服务器文件自动只读,您不能查看或更改只读或文件夹在 Windows Server 2003、 Windows XP、 Windows Vista 中或在 Windows 7 中的系统属性...

    有关 Microsoft Windows 2000 中,Microsoft Windows NT 4.0. Microsoft Windows 操作系统版本,Microsoft Windows 98 ...

  8. linux目录权限子目录权限,linux中更改所有子文件和子目录所有者权限

    linux中更改所有子文件和子目录所有者权限,这个需要好好谈谈. Ubuntu中有两个修改命令可以用到,「change mode」&「change owner」 即chmod以及chown,其 ...

  9. python删除特定文件_python删除特定文件的方法

    python删除特定文件的方法 本文实例讲述了python删除特定文件的方法.分享给大家供大家参考.具体如下: #!/usr/bin/python # -*- coding: utf-8 -*- im ...

最新文章

  1. Android 导入项目时出现错误的解决方法(红色感叹号)
  2. 剑灵选区界面一直正在连接服务器,如何选择服务器 选择困难症的指南
  3. linux debian ntp,Debian下面的ntp服务(ntpdate)的安装
  4. hbase java框架_Hadoop学习笔记—15.HBase框架学习(基础实践篇)
  5. 使用pssh进行并行批量操作
  6. mysql表类型_MySQL表类型的选择
  7. [CSS] Scale on Hover with Transition
  8. 多线程中的volatile和伪共享
  9. 【算法分析与设计】二分查找平均查找长度的求解
  10. Mint-UI 移动首页开发 - header导航、banner轮播图
  11. Blackcat主题-Wordpress
  12. ICLR 2021 | 腾讯 AI Lab 入选论文
  13. 阿里技术专家浅谈微服务架构
  14. pytorch torch.full
  15. 标注工具——VoTT的调试笔记
  16. ThinkPhp学习01
  17. keil4.72添加GD32F10x芯片
  18. STM32学习——矩阵键盘
  19. matlab gui矩阵计算器,matlab-gui矩阵计算器.doc
  20. git使用时报错:fatal: unable to access ‘xxx‘ : Failed to connect to github.com port 443 after: 【Time out】

热门文章

  1. 一个例子看懂kotlin的集合和序列
  2. OpenGL着色器基础
  3. Android.mk 文件语法详解
  4. Java继承_Hachi君浅聊Java三大特性之 封装 继承 多态
  5. Spark Worker启动源码
  6. iOS架构-cocoapods之公共库的发布与集成(16)
  7. 一张图搞定Android学习路线
  8. lodop打印不显示页码_CAD上明明有图,但是打印的时候不显示怎么办?原来要这样设置...
  9. 过滤输入内容中是否含有特殊字符与表情
  10. 堆实战(动态数据流求top k大元素,动态数据流求中位数)