美文网首页Git
git中patch的用法

git中patch的用法

作者: 元亨利贞o | 来源:发表于2016-04-25 16:59 被阅读1790次

    编程中有代码重用的概念, 那么git中同样也有这个概念.
    那么接下来就说说git中的 重用提交(reuse commit).
    git中重用提交的方式有两种, 一种是cherry-pick, 另一种便是patch.
    关于cherry-pick的用法可以参考我的git cherry-pick用法, 这一篇就来说说git patch的用法.


    1. 生成patch文件:
      git format-patch <old-commit-sha>...<new-commit-sha> -o <patch-file-dir>
      如:
    git format-patch 0f500e44965c2ed502b1d35b6d4d3926ac449c05...d37885d260bb228f00739c1bceea888a8841d48b -o ~/temp_patch/
    

    生成文件/Users/stone/temp_patch/0001-add-content-to-bb.c.patch
    查看commit-has: git loggit log -p (有详细的更改内容)

    1. 测试patch文件:

      • 检查patch文件
        git apply --stat ~/temp_patch/0001-add-content-to-bb.c.patch

      • 查看是否能应用成功
        git apply --check ~/temp_patch/0001-add-content-to-bb.c.patch

    2. 应用patch文件
      git am -s < ~/temp_patch/0001-add-content-to-bb.c.patch


    很容看出patch和cherry-pick的功能都是重用commit,
    功效几乎一样, 但是cherry-pick更为简单.

    更多git用法请参考: Pro Git(en), Prop Git(zh)

    相关文章

      网友评论

        本文标题:git中patch的用法

        本文链接:https://www.haomeiwen.com/subject/afcqrttx.html