是否可以追溯回溯并创建Git / GitHub项目的历史记录...?

时间:2018-10-30 15:03:10

标签: git github

在过去的两年中,我仅涉猎GitHub(或完全使用Git)。但是现在我发现自己想要创建一个GitHub存储库,然后在某种程度上将代码的历史版本插入其历史中。这有可能吗?

背景是我有一个C ++实用程序类,我已经在线共享了20多年。早在1990年代GitHub出现之前,我就将其发布到CodeGuru和CodeProject等网站。从未真正将其移开。但是人们仍然给我发电子邮件给我,所以我认为我应该把它放到GitHub上,然后让他们对其进行编辑。

但是我的代码“历史记录”基本上按日期保存在我保存在一个文件夹中的许多静态版本中。如果可能的话,我希望将其与完整的历史记录一起发布。但是手动执行此操作会花费一些时间,因此,如果我可以首先将当前版本放在那里,然后再插入历史记录,那将是理想的选择。

我不认为这是可能的,但我想问一下

这可以吗?

1 个答案:

答案 0 :(得分:1)

Git允许您重新设置内容(https://git-scm.com/book/en/v2/Git-Branching-Rebasing),这意味着您可以重写提交的历史记录(https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History),甚至可以更改提交的顺序,但是这些操作在发布项目之前必须完成。因此,似乎无法实现您想要的目标,即发布项目的一些历史记录,然后不时添加旧版本。

纯手工过程的替代方法:如果所有版本都存储在文件夹的集合中,则您可以编写脚本以从中构建git历史记录。基本上是这样的:

  1. 定义工作目录并在其上初始化git repo
  2. 循环浏览文件夹,例如按日期(YYYYMMDD)排序

    2.1。清空您的工作目录,除了它的.git子文件夹

    2.2。将当前文件夹的内容复制到工作目录中并提交

  3. 发布您的git项目:)

希望这对您有帮助...