Git中如何简化checkout时自动应用个人补丁的工作流?
简化个人补丁Git工作流的方法
方法一:用脚本自动打补丁
- 把你的个人补丁文件(比如
my-fix.patch)放在项目根目录下固定位置 - 创建一个可执行脚本
apply-my-fix.sh,内容如下:#!/bin/bash git apply my-fix.patch - 给脚本添加执行权限:
chmod +x apply-my-fix.sh - 每次checkout远程分支后,直接运行
./apply-my-fix.sh即可快速应用补丁 - 推送前,用
git diff确认补丁改动未被加入提交;如果不小心暂存了,用git reset HEAD -- .撤销暂存,再推送官方分支
方法二:用Git Stash长期保存补丁
- 首次应用补丁后,执行
git stash push -m "personal-local-fix"将改动存入stash - 每次切换到远程分支后,执行
git stash apply stash@{0}(若该stash是最新的,直接git stash apply即可)恢复补丁 - 推送前,执行
git stash push -m "temp-stash"暂存补丁改动,推送完成后用git stash pop恢复;若补丁未被暂存,直接推送官方分支即可
方法三:使用本地专属分支
- 基于远程官方分支创建本地专属分支:
git checkout -b personal-origin-main origin/main - 在这个分支上应用补丁并提交,提交信息明确标记为个人专属:
git commit -m "PERSONAL: 本地环境专属修复" - 当远程分支更新后,切换到专属分支执行
git rebase origin/main,解决冲突后完成rebase,补丁会自动重新应用到最新代码上 - 推送时务必指定官方分支,比如
git push origin main,避免误推本地专属分支
内容的提问来源于stack exchange,提问作者Ruggero Turra
相关产品推荐
相关产品推荐

