git patch的使用方法
·
工作中有时需要向多个分支应用同一份修改,这时就可以使用 patch 功能。这里 patch其实就是两个文件的差异。
使用 format-patch 生成patch
该方法能够保存所有的log记录
生成 patch
# 将每个commit写入单独的文件
git format-patch Commit1...Commit2
# 将所有commits全部写如一个文件
git format-patch Commit1...Commit2 --stdout > commits.patch
使用patch
git am --3way --ignore-space-change <patch_file_path>
或
git am --3way --whitespace=fix <patch_file_path>
使用 diff 或 stash 生成 patch
该方法只体现代码差异,不包含log记录
生成patch
- 从本地的修改生成
git diff HEAD > patchName.patch
- 从stash 生成
git stash show -p stash@{0} > patchName.patch
# 在PowerShell 需要添加引号
git stash show -p "stash@{0}" > patchName.patch
注:这里的0代表stash栈顶的内容
使用patch
git apply patchName.patch
更多推荐
所有评论(0)