您当前的位置: 主页 > www.001888.com > 正文
Git命令解析-patch、apply、diff
作者:admin      发布时间:2019-03-08

这种方式传递的修正将会损失提交信息和作者信息,但能够兼容非git管理的代码。除此之外,git还供应另一个命令更便于git库之间的patch传递。

0001-commit message.patch

Part 1

天生指定提交之后的所有提交的patch。把 -s 改为 -n,n为任意数字,则会生成每个提交之前的n个patch。每个patch是独自的文件,命名相似于:

format-patch生成的patch保存了更多提交信息。因此除了git apply之外,还可能用更智能的git am命令利用此patch。git am 命令会在应用patch失败时给出详细的错误信息,并允许手动解决抵牾,是官方较为推荐的补丁应用方式。

前言

git format-patch -s commit-id

可以使用 git diff > patchfile 将差异输出到patch文件,保存或者分享给别人。使用 git diff 命令可以查看工作区修改的内容,git diff ?cached 命令查看增添到暂存区但还未提交的内容。这两种命令会生成兼容unix系统的标准格式patch。类似这样:

git apply --check patchfile

无论是merge还是rebase,都是在同一个工作目录中协调差异,处理变更历史。而git的另一些命令,允许开发者单独保留,或者通过文件或邮件的方式与别人分享这些差异。

git apply --stat patchfile

git format-patch commit-id

这三条命令辨别是,检查patch文件格局,测试patch是否能运用到当前分支,应用此patch。

这有助于更灵活的决定跟应用某些较为独破的更改。这有点类似另一类版本操纵体系的工作方法:存储差别而不是快照。

git apply patchfile

作者:Video++极链科技后端杨婕

在前一篇文章,咱们探讨了merge跟rebase的差别。而这两者也有逻辑上的共性,它们都可以看做 比较差异 ? 提取/合并差异 ? 应用差异 的过程。除了这两个自动化的命令,咱们也可以手动逐步实现这一进程。