簡體   English   中英

在第一次和最后一次提交之間的同一文件中使用git diff

[英]Using git diff in same file between first and last commit

我有一個文本文件(.yml),我輸入一些文本到我的系統使用。 但現在我們需要立刻知道新的線路。 我想用git來解決我們的問題,但我找不到明確的命令來做到這一點。

這可能嗎?

你可以得到一個類似的提交列表:

git log --abbrev-commit --pretty=oneline

這應該是這樣的:

commitD Description
commitC Description
commitB Description
commitA Description

選擇你的兩個提交並在下面替換它們:

git diff <commitA>..<commitB> -- /path/to/file

您可以使用一個命令行執行此操作:

git diff -w `git rev-list HEAD --reverse | head -1`..HEAD -- <path/file>

它不能使用--reverse,計數為1(-1 / --max-count 1)...因為它在截斷后反轉結果列表。 因此,要么使用--reverse與head命令一起使用,要么使用tail -1。

我必須為我的用法添加-w,因為行結尾和制表符與空格使用的開關。

如果在第一次提交中未添加文件,則可能無法按預期工作! 您可以將以上行更改為:

git diff -w `git rev-list HEAD --reverse -- <path/file> | head -1`..HEAD -- <path/file>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM