一点背景。我工作的实验室里有一堆自制软件。许多项目源于相同的来源,但没有版本历史记录。在某些时候,其中几个被分叉用于不同的实验目的。我们正在将所有这些软件放入 git 存储库中。希望这将使我们能够在未来合并不同的版本。
因此,我必须为 project1 versionA 创建一个新的 git 存储库并调用该主分支。
然后我希望 project1 versionB 成为同一个 git 存储库的一个分支。
不过,我还没有找到很好的解决方案。到目前为止,我最好的想法是:
git init(在 project1 versionA 中)目录,然后提交并推送到远程存储库。然后将其拉到版本B所在的同一台计算机上的一个新的空文件夹中。然后,我签出一个名为 versionB 的新分支,并将该版本中的所有内容复制到版本 A 之上。然后我提交 -a 并推送。
那应该在 git 中给我两个版本/分支。一个称为 master (versionA),一个称为 versionB。除了不是一个简洁的解决方案之外,这个问题还在于版本A中存在但版本B中不存在的任何文件现在都将存在于两者中。这肯定会造成混乱,并且由于许多软件会查看某些文件夹并将所有内容加载到那里,这将是个问题。
另一个想法是在复制之前从版本 B 分支中清除版本 A 的东西,这会解决问题吗?
这似乎是一种迂回的方式来做一些应该相当简单(并且经常遇到)的事情?