在内部,`git push`究竟做了什么?

时间:2013-05-30 01:09:16

标签: git

git push内部是否会执行以下操作:

local $ git diff > patch
local $ send patch to remote
remote $ git apply remote

为什么我要问这是因为我想做git push这样的事情,我想知道git diff是否足够?我的意思是期待文本更改,可以git diff处理二进制更改,文件模式更改,文件系统更改(如mvmkdirrm等),等等?

例如,我有两个相同的repos,然后我在一个repo中做了一些更改,(修改一些文本文件,修改一些二进制文件,一些mkdircprmmv操作等等,然后我git addgit commit向前移动HEAD。所以我想在另一个repo中应用这些更改,我知道通用git命令可以做到这一点。但我想做patch之类的事情,我该怎么做?

1 个答案:

答案 0 :(得分:1)

为什么不将其中一个存储库设为另一个存储库,然后使用git pushgit pull

除此之外,git format-patchgit am可能是您正在寻找的工作流程。