| 场景 | 向生产环境投递小改动 |
|---|---|
| 组合 | diff -u + scp + patch |
步骤逐条执行
步骤逐条执行
diff -u app.conf app.conf.new > /tmp/app.conf.patch
scp /tmp/app.conf.patch prod:/tmp/
ssh prod 'cd /etc/app && cp app.conf app.conf.bak && patch -p1 --dry-run < /tmp/app.conf.patch'
ssh prod 'cd /etc/app && patch -p1 -b < /tmp/app.conf.patch'
ssh prod 'grep -n CHANGED /etc/app/app.conf' # 复核回滚
回滚
ssh prod 'cd /etc/app && patch -R -p1 < /tmp/app.conf.patch' # 或恢复 app.conf.bak先备份再 patch;--dry-run 不通过就不要应用,检查 -p 层级与上下文。