gpt4 book ai didi

svn - 使用 TortoiseSVN 进行分支和合并的最简单方法是什么?

转载 作者:行者123 更新时间:2023-12-03 05:13:55 25 4
gpt4 key购买 nike

使用 TortoiseSVN 进行分支和合并的真正简单的“方法”是什么?

最佳答案

假设您的工作目录正在从主干工作:

右键单击“根工作文件夹”(该术语始终指 Windows 资源管理器)并执行 svn update 将您的工作文件夹更新到最新的主干。

确保你拥有的是稳定的。

右键单击根工作文件夹并执行 svn commit 以确保将所有本地更改提交到主干。

右键单击根工作文件夹并执行 svn repo-browser

如果您在存储库中还没有分支文件夹:右键单击主干文件夹正上方的文件夹并执行“创建文件夹”并创建一个分支文件夹(例如,如果您的主干是 http://myserver/svn/MyRepository/MyProj/Trunk ,则创建 http://myserver/svn/MyRepository/MyProj/Branches )。

右键单击主干文件夹并执行 Copy To: 并为您的分支输入新文件夹名称。例如: http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch 。 (不要担心这会浪费很多空间......这被称为“廉价副本”......它实际上不会复制文件的内容,除非它们发生变化)。

关闭 repo 浏览器。

右键单击您的工作文件夹根目录,然后执行: svn switch 并选择新分支的文件夹名称(例如, http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch )。将其他所有内容保留为默认值。

现在在你的分支上工作。当您到达里程碑时,右键单击根工作文件夹并执行 svn commit 以提交到您的分支。 (这不会在后备箱中看到)。

如果其他人在同一个分支上工作,请定期从根工作文件夹执行 svn update。这将从分支更新。 (它不会从主干获得任何更新。)

无论其他人是否在同一个分支上工作,您都应该定期合并主干中的更改,以确保您的分支以后不会太难集成。要进行定期合并:右键单击工作文件夹根目录并执行 svn merge 。选择“合并修订范围”。在“合并自的 URL”下,选择主干(例如, http://myserver/svn/MyRepository/MyProj/Trunk )。将修订范围留空,其他所有内容都不要管。单击下一步。保留所有内容,然后单击合并。确保一切仍然有效......如果没有,请修复它。满意后,从工作根文件夹执行常规 svn update 以从分支更新(即使您是唯一在分支上工作的人,这也是必要的,以满足 SVN)。然后执行 svn commit 将合并的主干更改提交到分支。您可以根据需要定期重复此步骤多次。

一旦您的分支准备好集成,请最后执行上述步骤并进行最终测试。对分支进行最终提交。

右键单击您的根工作文件夹并执行另一个 svn switch ,这次切换到主干(例如, http://myserver/svn/MyRepository/MyProj/Trunk )。这将具有基本上“撤消”您在分支上所做的所有工作的效果,但请不要担心......您会恢复工作。 (它还会报告您在分支中未更改的文件的大量更新,但这些只是“SVN 属性”更改……不用担心。)

右键单击您的工作文件夹并执行 svn merge 。这一次,选择“重新整合一个分支”。对于 URL,放入您的分支(例如, http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch )。保留其余部分,然后单击下一步。保留所有内容,然后单击合并。您现在拥有在分支上完成的所有工作,以及来自主干的最新工作。

做最后的测试。一切都应该正常工作,因为这应该与您在分支的上次测试中拥有的文件集相同。右键单击您的根工作文件夹并执行 svn commit 。提交所有内容,甚至是您在分支中没有处理过的文件(它们只有“SVN 属性”更改,但提交它们有助于 SVN 跟踪所有修订)。

主干现在拥有您所有的分支工作以及您在分支上工作时在主干中完成的所有工作,并且一切正常。此外,SVN 拥有所有文件的完整历史记录,甚至是您在分支上工作时 checkin 的修订。

可选:进入 Repo-browser,右键单击您的分支文件夹(例如, http://myserver/svn/MyRepository/MyProj/Branches/MyNewBranch )并执行“删除”。这对主干没有影响,您不再需要分支。 (即使您真的很偏执,也不要担心,因为如果您确实需要,您甚至可以随时从 Repo 浏览器中取回已删除的分支。)

请随时发表评论!

关于svn - 使用 TortoiseSVN 进行分支和合并的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1461922/

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