如何使用git从提交或拉取请求中提取文件路径和更改?

如何使用git从提交或拉取请求中提取文件路径和更改?,git,github,git-log,git-show,Git,Github,Git Log,Git Show,我试图从Github中的提交/拉取请求中获得一个合并的更改列表(文件路径和新的/修改的/删除的更改) 这是我努力追求的格式: filepath/to/some/file.properties:thisIsAKey=这是该键的字符串。 我可以使用以下工具相对轻松地获取文件路径: git show--pretty=“format:”--name only commitID 我也尝试过这个,但它包含很多噪音: git日志-p commitID 以下是我使用上述方法得到的结果,但我只需要b/+更改: d

我试图从Github中的提交/拉取请求中获得一个合并的更改列表(文件路径和新的/修改的/删除的更改)

这是我努力追求的格式:

filepath/to/some/file.properties:thisIsAKey=这是该键的字符串。

我可以使用以下工具相对轻松地获取文件路径:

git show--pretty=“format:”--name only commitID

我也尝试过这个,但它包含很多噪音:

git日志-p commitID

以下是我使用上述方法得到的结果,但我只需要b/+更改:

diff --git a/locales/ES/es/forms/dispute-options.properties b/locales/ES/es/forms/dispute-options.properties
index 490457e9e0..569921196a 100644
--- a/locales/ES/es/forms/dispute-options.properties
+++ b/locales/ES/es/forms/dispute-options.properties
@@ -60,4 +60,5 @@ fraudSeller.info=Para cancelar este pedido tendrá que comunicarse directamente
 fraudSeller.errorHeadingMessage = Lo sentimos, pero no puede reportar este tipo de problema para la transacción seleccionada.
 fraudSeller.backButtonText = Atrás

-modal.cancel=Cancel
\ No newline at end of file
+modal.cancel=Cancel
+disputeOptions.creditTransactionInfo=Si presenta un caso para esta compra, aún tendrá que continuar pagando cualquier saldo importe dejado en su plan de {data.pageStore.value.creditProductDescriptor} junto con la comisiones tardía (si corresponde).
我一直在阅读有关如何使用
diff-filter
的文档,但还没有看到任何符合我需要的内容

编辑:
谢谢大家的评论!这让我找到了我一直在寻找的答案:
git diff-U0——忽略所有空间commitID1 commitID2 | grep'^[+]'| grep-Ev'^---a/)'>test.txt

鉴于您正在谈论PRs(这可能意味着许多修订,而不仅仅是一次),我认为您必须尝试:

git diff --name-only base-branch...pr-branch
注意三个点


这将为您提供添加/删除/修改文件的列表。

这行吗
git日志——名称状态--pretty=“”
什么是
?我一直使用
。包含吗?
表示两个分支之间的差异。所以你想检查公关引入的变化。这很好。如果您开始的分支没有移动,那么您将使用
从PR获得更改。。。但是如果基地分支已经移动了呢?然后你会从公关部得到变化。。。加上自两个分支分叉以来在基本分支上引入的更改。如果你想要的只是PR引入的更改,那么你必须使用三点。然后git将检查分支发散的位置,然后从那里区分。有趣。在过去,我使用了
gitmergebase
来实现这一点。然后从那里开始区分?那当然行。。。。只有
能为您做这件事。@Encrypted西瓜