我可以从使用 git show 创建的文件中应用整个提交吗?



有没有办法在 Git 中创建一个新的提交,使用提供更改和提交消息的文件,就像 git show 的输出一样?

如果其他元数据字段(如作者、作者日期等(也被考虑在内,那就太好了。

是的git show有一个用于此目的的-p标志。

git show -p abcd1234 > path/to/file.patch

它将生成一个文本文件(您可以使用任何文本编辑器打开它(,其中包含以下形式的内容(请注意您想要的元数据(

commit 8aab31565962f681639d0a7b6b5b8c0d3fe6b695
Author: John Doe <john.doe@corporation.com>
Date:   Tue May 28 17:05:01 2019 +0200
    Made some critical changes to function foo_bar
diff --git a/path/to/file b/path/to/file
index 8a443961df..5b5ad4726a 100755
--- a/path/to/file
+++ b/path/to/file
@@ -2620,6 +2620,6 @@ function foo_bar() {
 /**
  * Function documentation
  */
-function foo_bar() {
+function foo_bar() {
   someFunction("param");
 }

然后,您将能够在将来的某个时间点将补丁应用于其他地方

git checkout someBranch
git apply path/to/file.patch

有关详细信息,请参阅相应的文档部分。

相关内容

  • 没有找到相关文章

最新更新