javascript - 在 github 上重写一个 npm 包
问题描述
我有一个项目被相当多的人使用并且有几个贡献者。我想用打字稿重写整个库,但我不确定最好的方法是什么。如何在重写整个项目的同时保留项目的历史?我的直觉是简单地从本地一个新的 repo 开始,然后最终将其作为一个新的主要修订版推送,但我不确定这将如何影响当前的历史?对此有什么想法吗?
解决方案
如果你想让历史上的一切都一样,
创建一个新分支并用新的打字稿替换所有代码
创建拉取请求。
对于冲突,您必须从服务器获取本地和忽略,因为您知道您的文件是最新的。
- 合并拉取请求。
- 验证所有作品。
通过这种方法,它将保留完整的旧历史和贡献者以进行跟踪。
尽管从头开始的新事物总是有一些复杂性,例如:
旧代码报告的错误/问题现在已解决或待处理甚至相关。
如果相关,旧的未合并的拉取请求将要么需要合并,否则它将因新的打字稿代码而过时。我已经可以看到许多开放的拉取请求。
自从添加/替换旧文件以来,新文件名必须跟踪历史记录,但项目将具有完整的历史记录并提供参考。
拥有新的存储库并替换旧的将不会跟踪旧的贡献并且将无法跟踪。您还可以创建新的存储库/项目并保留旧的完整,但这完全取决于您和不同的决定。
推荐阅读
- substrate - 无法使用 polkadotjs 密钥环验证子密钥签名,反之亦然
- python - VS Code Python 调试。如何从错误中继续。更改后重复从行
- java - 使用目录Spring boot java创建excel文件
- react-native - TypeError:undefine is not an object(evalating--)
- python - 如何在绘图的 x 轴上添加年份?
- node.js - Nuxt.js - Axios 因“超出最大调用堆栈大小”而崩溃
- angularjs - AngularJS:如何在路由器解析中定义常量
- scala - 对列类型 double 的 desc 排序在 scala 数据框架中不起作用
- python - Django 模板解耦:无法访问 Django 项目之外的静态文件
- powershell - 在powershell gui的文本框中动态填充文本