问题标签 [azure-git-deployment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - Azure DevOps YAML 管道 - git diff 无法正常工作
我正在我的 Azure DevOps YAML 管道中执行一个 git 命令,以获取两个提交之间的更改,例如git diff commit1 commit2 --name-only
通过 PowerShell 脚本 - 请参阅下面的完整代码:
这会引发一个错误,声称未找到任何文件。但是,如果我在git diff
本地执行相同的命令,我也同步了存储库,它会按预期返回更改的文件。
我是否需要手动更新管道的结帐步骤已经下载的存储库?
azure-devops - 添加子模块后,nuget 将所有包还原到 Azure Devops Build 中的子模块包目录
场景:我们想将一些代码移动到一个新的 repo (NewSln),所以我们创建了这个新的 repo,然后将代码作为子模块添加回原始 repo (OldSln)。不得不修改一些引用以指向新版本,但能够使构建在本地工作。
问题:执行此操作后,Azure Devops 构建在 msbuild 构建步骤中失败,原因是
错误:此项目引用此计算机上缺少的 NuGet 包。使用 NuGet 包还原下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105
丢失的文件是..\..\..\packages\Fody.6.5.2\build\Fody.targets
. 和其他类似问题。我们没有对这些引用进行任何更改
我注意到恢复步骤是将包恢复到子模块目录。例如,我看到了这一行
2022-02-10T23:52:45.1474898Z 将包“AcisExtensionSDK.1.0.4.1061”添加到文件夹“C:__w\1\s\NewSln\packages”
我确认此子模块仅由较大的 repo 使用而不是子模块,但它正在恢复\NewSln\packages\
而不是\packages\
到目前为止的调试工作:我可以看到在本地构建中显示为缺失的引用,并且构建在本地工作,对我来说没有什么明显的原因是它在开发操作上失败。我还看到有关相反问题的各种堆栈溢出帖子,其中 nuget restore 不导入子模块 repo 的引用,但我没有发现仅恢复子模块 repo 的情况。
有什么可能导致这种情况吗?将要恢复的包裹路由回适当包裹的方法是什么?