Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以使用Git在不同版本之间填写遗留项目的更改历史记录吗?_Git_Tfs_Legacy_Configuration Management_Vms - Fatal编程技术网

我可以使用Git在不同版本之间填写遗留项目的更改历史记录吗?

我可以使用Git在不同版本之间填写遗留项目的更改历史记录吗?,git,tfs,legacy,configuration-management,vms,Git,Tfs,Legacy,Configuration Management,Vms,假设我们目前有一个遗留的代码库,它已经完成了工作,并且正在移植到新的硬件上。目前版本控制被视为唯一的版本控制,对代码所做的任何工作都是通过一系列的zip包一次转换成一个CM包(以及对它的测试)。当一个版本准备好后,单独的更改被转储到前一个版本的顶部,并解决了任何冲突,然后该代码通过该版本的回归测试套件运行,并成为新版本 我们的CMS目前只有主要版本可供下载,我们有单独的更改可用。我们谈论的是在新的维护周期中迁移到一些TFS-Git混合版本,因为我们可以抛弃编译代码和管理更改的旧系统(我们希望使用

假设我们目前有一个遗留的代码库,它已经完成了工作,并且正在移植到新的硬件上。目前版本控制被视为唯一的版本控制,对代码所做的任何工作都是通过一系列的zip包一次转换成一个CM包(以及对它的测试)。当一个版本准备好后,单独的更改被转储到前一个版本的顶部,并解决了任何冲突,然后该代码通过该版本的回归测试套件运行,并成为新版本

我们的CMS目前只有主要版本可供下载,我们有单独的更改可用。我们谈论的是在新的维护周期中迁移到一些TFS-Git混合版本,因为我们可以抛弃编译代码和管理更改的旧系统(我们希望使用Git作为开发报告,但由于我们一直使用TFS,所以我们将继续使用它)(我希望这个家伙正在考虑将TFS应用于夜间睡眠和CI,而不仅仅是维持现状)。我已经撤销了所有主要版本,并将它们设置为个人回购协议中的承诺,然后解决这个问题,这很容易做到

如果我想提倡使用Git或TFS作为跟踪更改的主要方法,而不是将代码文件附加到Word文档中,我可能需要证明我们可以做到这一点。我听说我们不能偏离所有更改的一个基线,跟踪更改的唯一方法是将实际更改的文件作为包提交事实上,很多人都在说为什么这个过程不能改变,但这必须要有新的硬件,我希望这个解决方案不是半生不熟的

到目前为止,我已经从VMS CMS中获取了所有主要版本,从TFS中获取了横幅文件(仅注释文件,一种编写SDD的方法),当我们从CMS切换到这些文件时,确定了它们之间的事件顺序,并在一个主控上进行了一系列提交,每个主控上都有一个版本标记(将提交保存到TFS上的横幅版本,该版本实际上介于两个CMS版本之间,我们使用的源代码引用驱动器显示该版本的横幅没有被捕获)

我想回到过去,从每个标记的提交中创建一个分支,对吗?然后重新设置基础,使每个提交都有上一个版本作为父版本?在这一点上,为了证明可以捕获更改历史,我将为我们为子版本归档的每个更改包创建一个分支。然后,我将为每个c重新设置子版本的基础hange package branch.我希望它们都能同时出现,因为不管是好是坏,这就是我们的运作方式

所以我的树现在就是这个

        *baseline
            |         
            |   
        *release1
            |
            |
        *release2
这棵树看起来像这样

        *baseline
      /     |     \
   /        |        \
*chg0-0 *chg0-1 ...chg0-n
   \        |        /
      \     |     /
        *release1
      /     |     \
   /        |        \
*chg1-0 *chg1-1 ...chg1-n
   \        |        /
      \     |     /
        *release2
我能把我所拥有的重塑成我想要的吗?一次提交能被重新设定为多个父项的合并吗?我似乎能在我在家建立的测试回购中插入这样的历史记录,但我还没有一次完成所有的整合步骤。然后再一次合并一个可能还是可以的


在工作中,我只有这么多的时间来做这样的“goldbrick”,我现在正忙于编写功能包。我希望协作不仅仅是让某人在网络上指向我的共享,定期进行“提交”通过为该增量的每个软件组件设置一组无法比较的会话,并将更改的文件和差异转储到那里。我们中只有少数人一次在编写代码,但他们为这类东西制作了工具…

我建议看一看。我没有看到可下载的代码,但有一个关于f所涉及的问题。

如中所述,提到的perl脚本是一个概念证明。在此期间,该脚本得到了改进,但尚未准备好用于自动化过程。