如何强制Azure Data Factory从远程Git同步刷新分支最新状态
Azure Data Factory Git集成模式下强制同步远程分支状态方案
ADF在Git协作模式下,会在浏览器本地缓存已加载分支的commit快照,常规页面刷新、跨分支切换操作不会主动触发远程仓库fetch,才会出现基于旧版本提交强制push覆盖远程内容的问题。以下是可直接生效的解决方法,操作成本远低于每次新建分支再cherry-pick的临时方案。
方案1:通过Git配置重载触发全量分支拉取(无副作用,优先使用)
操作步骤:
- 点击ADF创作界面左上角的分支选择下拉框,进入Git存储库配置页
- 不需要修改任何已配置的仓库地址、协作分支、工作目录根路径等参数,直接点击面板底部的「保存/应用」按钮
- 等待页面自动重载完成后,ADF会强制拉取仓库下所有分支的最新远程状态,本地缓存的旧分支快照会被完全替换
注意:操作前请确认ADF界面中没有未保存的编辑内容,否则未保存修改会直接丢失。
方案2:手动清理本地缓存的分支状态
如果方案1执行后仍未同步到最新版本,可直接清理浏览器侧的缓存:
- 在ADF页面按F12唤起浏览器开发者工具
- 切换到「应用程序(Application)」面板,找到对应ADF域名下的本地存储(Local Storage)条目
- 搜索关键词
adfGit、branchCache,将匹配到的缓存项全部删除 - 刷新页面后重新选择目标分支,此时ADF会跳过本地缓存直接从远程拉取最新分支内容,不会再基于旧版本生成提交。
方案3:误覆盖后的快速恢复方法
如果已经出现ADF强制push覆盖本地提交的情况,不需要重做修改:
- 在本地仓库执行
git reflog,找到被覆盖前的最新提交哈希 - 执行
git reset --hard <目标提交哈希>后重新推送到远程即可恢复内容,后续ADF同步后会自动识别到最新版本。
常规刷新、切分支操作无效的核心原因:这类操作只会读取浏览器本地存储的分支快照,不会主动向配置的Git仓库发起拉取请求,属于ADF前端的默认设计逻辑,不是仓库或权限配置错误。
内容的提问来源于stack exchange,提问作者Honza
相关产品推荐
相关产品推荐

