结论先行:只有在双方都停止直接改生产环境、并把改动改为可合并的补丁或分支时,两个服务商同时改同一网站才不会互相覆盖。如果做不到这一点,唯一稳妥的做法是先指定一个写入方,另一个只提交建议,等交接完成再放开权限。
两个服务商同时动一个网站,出问题通常不是因为谁操作失误,而是因为双方都在改同一批文件或同一批页面记录。常见有三类重叠:同一主题模板、同一批 URL 的标题与正文、同一套全局配置(导航、重定向、统计脚本)。
可以区分三种原因,它们的处理方式不同:
判断依据是时间线而不是感觉:把最近两周的改动按“谁改的、改了什么、什么时候上线”列出来,如果两条记录指向同一文件或同一记录 ID,就属于路径重叠,必须先解决写入权,再谈协作。
如果旧服务商正在退出、新服务商正在接手,比较现实的分工不是“一人一半”,而是按层切:一方负责内容与页面层,另一方负责模板、配置与部署层。前提是这两层的文件不互相引用同一份源文件,否则切了也会撞。
把这个前提写清楚,才能决定是否并行。假设一个场景:旧顾问仍负责内容更新,新顾问负责改版模板。若模板改版会重写页面正文所在的字段结构,那么内容更新在改版期间就会被覆盖或丢失。此时正确动作是暂停内容侧的直接写入,改为把新内容攒成待发布清单,等改版结构冻结后一次性导入。这个动作的结果是:内容侧的产出延后,但避免了返工,下一步就可以按冻结后的字段格式验收。
反例同样成立:如果两层确实完全隔离——内容只进数据库字段,模板只改静态文件,且部署脚本不会重建内容表——那么并行是可行的。但一旦部署脚本包含“从模板重新生成页面”的步骤,隔离就被打破,此前的结论失效,必须回到单一写入方。
避免覆盖的通用做法是让每一次改动都留下可对比的差异,而不是直接替换结果。
其中第 1 条最关键。如果一方只能给出“已优化完成”这类结论,无法说出改了哪些 URL,另一方就无法判断是否与自己重叠,只能靠事后比对发现,成本高得多。要求可核对清单,是让协作从“互相覆盖”转向“互相避让”的实际动作。
旧合作关系结束时,不必全部推倒。判断某个部分是否保留,看它是否仍被外部引用:
保留决定会直接影响写入权划分:被保留的旧页面如果继续由退出方维护,就等于把写入权留在两个团队手里。更清晰的做法是把保留页面的维护权一次性移交,退出方只提供历史改动记录,不再直接写入。
可执行的顺序是:先冻结生产环境的直接写入,只留一个操作入口;然后由接手方按改动清单逐项核对并合并;确认线上状态与预期一致后,再把权限按层分配给双方。如果核对中发现无法说清来源的改动,不要猜测归属,先回退到最近一次可确认的快照,再重新应用。这样做的结果是交接期变长,但避免了覆盖导致的反复返工,也让后续的并行分工有据可依。