我有一个正在进行的项目,该项目可以可视化某些训练数据上的单词嵌入。这是我们完成的一个小型学校项目。
现在,我想通过允许用户上载他们训练有素的模型并为他们提供可视化工具来做进一步的工作。这个未来的项目将包含先前项目的大部分代码。但是,我希望两者都是两个独立的“产品”,因为我不想弄乱我们第一个项目的代码。我应该分支到第一个项目,还是应该创建一个新的存储库?
答案 0 :(得分:2)
到目前为止,您有两个选择,可以将其派生,也可以创建一个分支。我建议您将其分叉并开始进行处理,而不是创建分支,因为您希望将代码的两个实体分开,因此最好将其保留在两个不同的存储库中。当您将产品投入使用时,这将为您节省很多麻烦。尽管最终,这是您的判断力。 希望您能找到想要的答案!
答案 1 :(得分:1)
我建议分叉仓库。 在同一个仓库中的一个分支至少向我暗示这是产品的某个旧版本或功能分支。 我会考虑这些策略对看到它的人意味着什么。如果没有人考虑在“仅”分支中存在单独的产品,则分叉仓库。
答案 2 :(得分:0)
您可以为所有这些分支创建一个新分支,并将数据保留在另一个分支中,以便两个分支可以并行运行而不会弄乱彼此的代码。
用于创建新分支的命令是:
在创建新分支之前,请从上游拉出更改。您的主人需要保持最新状态。
$ git pull
在本地计算机上创建分支并切换到该分支:
$ git checkout -b [name_of_your_new_branch]
将分支推送到github上:
$ git push origin [name_of_your_new_branch]
希望它能起作用!
答案 3 :(得分:0)
我认为您要提出的问题陷入了单存储库项目与多存储库项目之间的长期争论。
这篇文章(https://medium.com/@patrickleet/mono-repo-or-multi-repo-why-choose-one-when-you-can-have-both-e9c77bd0c668)讨论了您在做出决定之前要考虑的一些事情。
如果这是一个业余项目,我会建议您使用单一存储库策略,因为您很可能没有时间或金钱来投资从不同存储库获取和组装的同步构建基础架构。如果修改和模块化您的代码似乎是太多的工作。我建议打开一个新的存储库,将两个产品作为一个整体进行计划,迁移代码,然后转储旧的存储库。
我作为我自己的提醒笔记本构建的这个项目是一个相当简单的单一存储库项目:
https://github.com/tianhaoz95/developer-note
由于项目目录中有许多微型项目,并且它们都共享相同的Travis或CircleCI构建基础结构。
如果您想讨论此主题,请随时向我发送消息。