gpt4 book ai didi

version-control - 外部项目的版本控制

转载 作者:行者123 更新时间:2023-12-01 11:57:00 26 4
gpt4 key购买 nike

我正在从事一个庞大的开源项目(“项目”),我正在更改项目但没有提交权限。我正在寻找维护我自己的项目分支的策略。我正在考虑的一些问题:

  1. 鉴于我正在更改项目的源代码、添加新文件等,如何将我自己的工作放入版本控制系统中。
  2. 如何与项目保持同步,而不必一遍又一遍地手动合并我自己的更改。

我从来没有遇到过这种情况——我一直在某个版本控制系统中维护我的完整项目。我现在的计划是这样的:

  1. 在我的 SVN 中创建目录树,类似于项目中的目录树。
  2. 在我的 svn 中保留所有更改的文件(并且只保留它们)。
  3. 每次我决定与项目的新基线同步时,我都会进行检查,将我的 svn 树合并到新版本中,测试,然后将我的更改提交到我的 svn 并将它们与最新项目一起分发基线。

这里的问题无穷无尽。太多的手动步骤,随着时间的推移越来越多的工作,等等。正确的做法当然是成为原始项目的一部分,但由于各种原因,这在目前看来是无关紧要的,也是不可能的。

想法?

最佳答案

我会为此使用 git 或 mercurial;只需将项目导入 git 或 mercurial,并将上游更改合并到项目的分支中,以便轻松合并到主干中。

如果上游项目有自己的仓库,导入就更简单了。 git 和 mercurial 都支持直接导入其他版本控制系统。我最近这样做是为了调整一个存在于 SVN 中的现有项目:https://github.com/mjpieters/rod.recipe.rabbitmq

请注意,该项目有一个“上游”分支。在查看 github.com 中的更改后,particular project 现在已经接受了我提出的更改。

这里有几个关于这个主题的问题:

使用 mercurial 创建类似的设置应该是微不足道的。

关于version-control - 外部项目的版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6114391/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com