【发布时间】:2019-06-10 15:10:00
【问题描述】:
我对特定文件进行了更改并进行了提交,准确地说是多次提交,但没有一个被推送。 我需要在远程分支中找到该文件的最后一次提交的提交 ID。
所以我试图在远程分支中找到 repo 的最后一次提交,但是预期的特定文件的这个提交是在 git 日志中显示的最后一次提交之前的方式。
git log
git rev-parse --short <branch>
所以考虑有两个文件, 命名为 A.txt、B.txt
A.txt 于 2019 年 1 月 1 日修改并提交,ID: abc123 (say)
B.txt 于 2019 年 1 月 12 日修改并提交,ID:abd456 (say)
两个都被推了, 所以分支中repo的最后一个commit ID是abc456
考虑一下,今天我对 A.txt 进行了更改,并进行了多次提交,ID:def123、def456、def789 但是我没有推送到远程分支。
我正在尝试过滤掉提交ID abc123之后A.txt中修改的行,那么如何实现呢,
我可以使用
修改预期的日志行git blame "$filename" | sort -b -k 3 | grep -i "$lastcommit" -B 100 | grep -v "$lastcommmit"
但是如何获取特定文件的最后一次提交(在远程分支中)。 在远程分支上使用 repo 的最后一次提交,我无法得到预期的结果(显然因为这里没有匹配的提交 ID)
【问题讨论】: