在 Darcs 中,查看两个补丁之间的差异
In Darcs, view diff between two patches
在 Git 中,我可以通过 运行 查看两次提交之间的差异,例如:
$ git diff c23a45 ffd644
如何在 Darcs 中执行此操作?
以下 section 5.10.1 of the user manual 我已经尝试过:
$ darcs diff --from-patch ffd644 --to-patch c23a45
但这给出了错误:
darcs: Couldn't find patch matching "patch-name ffd644"
CallStack (from HasCallStack):
error, called at src/Darcs/Patch/Match.hs:654:43 in darcs-2.12.4-EYDQyfVEyiPHocMCwLEEKg:Darcs.Patch.Match
我在使用完整补丁哈希时遇到了类似的错误。
要通过哈希引用补丁,请使用 --from-hash
和 --to-hash
:
darcs diff --from-hash ffd644 --to-hash c23a45
您还可以使用更详细的 match
语法:
darcs diff --from-match 'hash ffd644' --to-match 'hash c23a45'
请注意,这是一个 包含 选择:您会看到一个差异,其中包含您指定的两个之间的所有补丁。
包含的补丁集还取决于补丁当前在您的存储库中的顺序。如果您重新排序补丁,例如使用 darcs optimize reorder
或将它们拉入不同的存储库,那么您可能会看到不同的差异。
在 Git 中,我可以通过 运行 查看两次提交之间的差异,例如:
$ git diff c23a45 ffd644
如何在 Darcs 中执行此操作?
以下 section 5.10.1 of the user manual 我已经尝试过:
$ darcs diff --from-patch ffd644 --to-patch c23a45
但这给出了错误:
darcs: Couldn't find patch matching "patch-name ffd644"
CallStack (from HasCallStack):
error, called at src/Darcs/Patch/Match.hs:654:43 in darcs-2.12.4-EYDQyfVEyiPHocMCwLEEKg:Darcs.Patch.Match
我在使用完整补丁哈希时遇到了类似的错误。
要通过哈希引用补丁,请使用 --from-hash
和 --to-hash
:
darcs diff --from-hash ffd644 --to-hash c23a45
您还可以使用更详细的 match
语法:
darcs diff --from-match 'hash ffd644' --to-match 'hash c23a45'
请注意,这是一个 包含 选择:您会看到一个差异,其中包含您指定的两个之间的所有补丁。
包含的补丁集还取决于补丁当前在您的存储库中的顺序。如果您重新排序补丁,例如使用 darcs optimize reorder
或将它们拉入不同的存储库,那么您可能会看到不同的差异。