git apply和git fetch有什么区别?

vi4fp9gy  于 2022-12-02  发布在  Git
关注(0)|答案(1)|浏览(186)

当我从Gerrit那里调出Patch时,问题来了:
git apply和git fetch有什么区别?

cp patch /the/path/save
git apply patch

git fetch ssh://someone@gerrit.(SOME INFOMATION)  && git cherry-pick FETCH_HEAD

它们是一样的吗?还是先做a然后做B
a,B不能同时做,看起来他们做的是一样的事情,但我还是不明白他们之间有什么区别。

h22fl7wq

h22fl7wq1#

即使输入了相同的提交内容,结果也会不同:

  • git cherry-pick将创建一个提交,它是指定提交的副本,并保留原始提交信息(作者,作者日期,提交信息)
  • git apply将读取一个diff/patch文件并将其应用到当前工作目录。

不会创建提交,如果您提交了结果更改,原始提交信息不会在该提交中。
(除非您自己手动添加)
然而,也有git am -k,你可以用它来导入一个由git format-patch -k创建的补丁,然后你应该得到一个commit,它是一个commit的副本,类似于cherry-picking。
https://git-scm.com/docs/git-amhttps://git-scm.com/docs/git-format-patch显示器

相关问题