假设我已经使用一个小型免费/开源代码库几年了,项目的维护者/开发人员不使用任何版本控制系统。相反,新版本被添加到ftp服务器上的一个可公开访问的目录中(换句话说,自由软件过去的分发方式)。因此,我现在在本地机器上有一个文件夹,其中包含代码库的几个版本(即完整副本)。例如:
/foo
/foo_v0.1.0.zip
/foo_v0.1.1.zip
/foo_v0.2.0.zip
/foo_v1.0.0.zip
/foo_v1.0.1.zip
/foo_v1.1.0.zip
/foo_v2.0.0.zip
现在,假设我想将其转换为git存储库,并将其推送到一个新的GitHub存储库中,这样每个版本都可以单独浏览/下载,并且我可以查看每个文件在不同版本之间的差异。
实现这一目标的最佳方式是什么?
假设您希望以每个版本都是提交的历史结束,是吗?您可以解压缩最旧的版本git init
、git add -A
、git commit -m 'Foo v0.1.0'
。然后删除所有工作树文件(也许和rm -rf *
一样简单)。现在将下一个版本解压回同一个文件夹。重新添加所有内容(git add -A
)。再次提交。对每个新版本重复此操作。