如何将后端代码从Azure函数提取到子存储库中,同时保留git历史记录?

问题描述 投票:0回答:1

我在 GitHub 存储库中有一个 Azure 函数项目(AnkiSentenceCardBuilder 是 Azure 函数项目),我想将后端代码拉出到新的子存储库中,这样我就可以将其与其他表示层(例如 WinForm)重用.

为了保留 Git 历史记录,我计划更新当前存储库以添加一个类库项目,将所有后端代码移至该新项目中,克隆存储库并删除 Azure 函数项目。

我的问题是在创建类库项目后,我收到错误

Can't determine project language from files. Please use one of [--csharp, --javascript, --typescript, --java, --python, --powershell, --custom]
。我假设这是因为 Azure 函数试图将类库视为 Azure 函数。由于它不应该是 Azure 函数,因此我无法通过在新项目上调用
func init
来解决此问题,因为这会将我的类库转换为 Azure 函数。

我该怎么做?
对于额外的上下文,我对 Git 和 Azure 都很陌生,并且正在使用 C# 在 VS 中处理此问题。

c# git visual-studio github azure-functions
1个回答
0
投票
  • 在 Visual Studio 中,在解决方案中包含一个新的类库项目。我已将其命名为 YourbackendLibrary。

我的存储库结构:-

enter image description here

创建新类库的命令:-

dotnet new classlib -n YourLibraryName

输出:-

enter image description here

  • 将包含所有类和实用程序的后端代码从 AnkiSentenceCardBuilder 项目传输到最近添加的类库项目。

  • 验证类库项目是否正确配置为类库,确保其针对适当的框架和输出类型。

  • 从类库项目中消除与 Azure Functions 相关的任何引用或依赖项。

  • 如果您的函数代码是 Services 文件夹的一部分,请确保将带有函数代码的所有类和实用程序移动到新创建的类库,然后使用所有必需的依赖项重构您的代码。

  • 移动并验证代码后,将更改提交到 Git 存储库以维护历史记录。将存储库克隆到其他位置以复制更新的结构,而无需 Azure Function 项目。通过从原始存储库中删除 Azure Function 项目进行清理并提交此更改。如果重用类库,请确保更新引用,例如将其添加到您的 WinForms 项目中。

© www.soinside.com 2019 - 2024. All rights reserved.