如何创建可更新的API模板?

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

我有一个 C# CRUD API,任何想要使用它的人只需要向其中添加模型类,它就会对该模型执行基本的 CRUD 操作。当然,类似的项目可能已经这样做了,但这不是这个问题的重点。

我想要什么:

  • 任何人都可以从此 CRUD API 创建新的 API。让我想到使用可以分叉的公共 git 存储库、git 模板存储库或 .NET 模板。
  • 可更新,一旦从 CRUD API 创建新 API,如果对 CRUD API 进行更新,新 API 可以拉取这些更新。这将删除 git 模板存储库和 .NET 模板选项。
  • 我想从中创建 API。由于 git 不允许分叉您自己的存储库,因此分叉选项被删除。

很高兴拥有:

  • 能够重命名API。

满足所有这些要求(包括最好的要求)的唯一解决方案是使用某种 NPM 包来访问 git 存储库、获取文件并创建或更新新的 API。因此,如果我对 CRUD API 进行了更新,我会将更改推送到 git 存储库,然后将 API 复制到名为版本的文件夹中。然后,我会更新 NPM 包并指向该版本。然后,用户可以更新 NPM 包,这将替换除 Models 文件夹中的文件之外的所有文件。

如果他们对其他文件进行了更改,并且他们的新 API 受源代码控制,他们可以比较更改并根据需要进行修复。

这似乎是一个非常复杂且容易出错的解决方案。有更好的方法吗?

c# .net git templates repository
1个回答
0
投票

分叉对每个人来说都是最好的选择,除了我自己。但是,我能够找到这里描述的解决方法:https://mzrimsek.medium.com/fork-your-own-github-repository-19ad4582b50a

让这个为我自己工作的解决方案是创建一个新的存储库,然后将一个远程添加到我想要派生的存储库(在本例中是我的 CRUD 存储库)。

// clone your new repository
git clone <new repository>.git
// navigate to the repository root
cd <new repository>
// add a reference to your original repository
git remote add upstream <original repository>.git
// pull all code from the original repository
git pull upstream master
// push all code to the new repository
git push origin master
// pull new changes from forked repo
git pull upstream master
© www.soinside.com 2019 - 2024. All rights reserved.