git 中的 patch 使用

版权声明:本文为博主原创文章,可以随意引用或转载,但未经博主允许不得用于任何商业用途。 https://blog.csdn.net/ustccw/article/details/84546873

介绍

git 协同开发时, patch 在某些场景下, 是个不错的选择.
patch 其实就是一个 git diff 记录, 那为什么要用它呢? git 那么多协同开发的工具, 难道非要用它??

  • 没有网络时候, 同步一个 feature/fix 给其他开发者/测试人员/客户使用

    公司网络出问题时, 没法通过 git cherry-pick 或其他 git 操作来同步feature/fix, 这时打一个 patch 通过局域网共享或 U 盘拷贝即可共享给对方, 而不影响项目进度

  • 有网络时候, 同步一个不成熟或不便于公开的 feature/fix 给所有开发者/测试人员/客户使用

    有时, 一个 feature/fix 只想同步给协同开发的某几个人, 那么 patch 或许比 git push 来的更加符合用户体验

  • For Fun

    不玩一下, 会很可惜

打 patch

方法其实很多, 但我这里更推荐下面方式:

  1. 先将 feature/fix 正常提交到某个分支
  2. git log 查看提交前的 old_commitID(第二个) 和当前提交的 new_commitID(第一个)
  3. git 根目录下生成 patch
    git diff old_commitID new_commitID > feat_cw.patch
    

    注意: 根目录下生成 patch, 方便同步

酱紫, feat_cw.patch 就生成好了, 是不是 so easy?

应用 patch

切换到同样的根目录下使用一下即可.

git apply feat_cw.patch

注意:

  1. 需在同样的根目录下应用
  2. 一些警告可以忽略

猜你喜欢

转载自blog.csdn.net/ustccw/article/details/84546873