You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

废弃Azure DevOps拉取请求后,如何恢复Azure Databricks Git中的已提交变更

废弃Azure DevOps拉取请求后,如何恢复Azure Databricks Git中的已提交变更

你好,针对你遇到的问题——废弃Azure DevOps拉取请求后,分支还存在、修改后的笔记本也保留着,但找不到之前的提交记录,没法重新提交这些变更,我给你几个可行的解决办法:

方法一:从废弃的拉取请求中找回提交记录

即使PR被废弃了,Azure DevOps依然会保留该PR的完整历史记录,你可以这样操作:

  • 打开Azure DevOps仓库,在「拉取请求」页面的「已关闭」或「已废弃」标签下找到目标PR
  • 进入PR详情页,切换到「提交」标签,这里会列出该PR包含的所有提交,记下每个提交的哈希值(一串字母数字组合)
  • 切换到本地对应的分支,执行命令重新应用这些提交:
    # 单个提交恢复
    git cherry-pick <提交哈希值>
    # 批量恢复连续提交(替换为第一个和最后一个提交的哈希)
    git cherry-pick <起始提交哈希>..<结束提交哈希>
    

方法二:利用Git引用日志(reflog)恢复提交

如果这些提交曾经在本地仓库存在过,Git的reflog会记录所有仓库操作,哪怕分支被重置过也能找回:

  • 在本地仓库终端执行命令查看操作日志:
    git reflog
    
  • 在日志列表中找到对应要恢复的提交记录(可以通过提交消息、时间来识别),记下对应的HEAD@{数字}或提交哈希
  • 恢复提交到当前分支:
    # 单个提交恢复
    git cherry-pick <记录中的哈希/HEAD标识>
    # 直接将分支恢复到该提交状态(注意:会覆盖当前分支未提交修改,需提前备份)
    git reset --hard <哈希/HEAD标识>
    

方法三:检查分支完整提交历史

有时候可能只是查看日志的方式不对,导致没看到提交:

  • 在本地执行命令查看所有分支的完整提交记录:
    git log --all --oneline
    
  • 如果找到目标提交,直接基于这些提交重新发起PR即可。

备选方案:基于现有修改重新提交

既然修改后的笔记本还存在,你也可以直接基于当前文件状态重新创建提交:

  • 检查文件修改状态:
    git status
    
  • 将修改文件添加到暂存区:
    git add . # 或指定具体文件路径
    
  • 创建新提交并推送到远程:
    git commit -m "恢复废弃PR中的笔记本变更"
    git push origin <你的分支名>
    

之后就可以重新发起拉取请求了。

备注:内容来源于stack exchange,提问作者Gerlex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 11:58:07