2

在线阅读文档和教程后,我正在努力掌握 CVS 中的分支。让我举一个例子说明我的开发流程有时是如何工作的:

我将对某些内容进行一些更改(比如说修复一些毫无疑问会变成更大项目/活动的错误)。现在,我不想将这些更改提交到主分支,因为如果有人在网络服务器上进行更新,它们将被释放。

我查找了分支,但如果我尝试分支这些文件,那么它说我不能,因为文件已被修改。我会以错误的方式解决这个问题吗?到目前为止,我只是将这些更改留在我的本地沙箱中,但这可能会因多个重叠的项目/错误修复而变得棘手(其中一些很快并且需要在上述更改之前发布)。

4

5 回答 5

2

这可以通过在“分支创建”对话框中取消选中“检查文件是否未修改”来轻松完成。

创建分支后,通过执行Update Special并选择新分支切换到分支(您可能需要单击更新列表...以显示新分支)。本地修改的文件将不受此更新的影响(前提是您没有勾选Clean copy)。然后像往常一样简单地执行Commit以使您的更改出现在新分支中。

于 2016-08-02T14:33:42.507 回答
1

实际上不可能完成这项任务。终于实现了 Git,我得到了翅膀,不再需要在 CVS 的泥泞中跋涉。案例已结束...不要尝试使用 CVS 进行分支(尤其是在更改之后)。

于 2011-11-16T21:11:31.460 回答
0

十年左右没有使用 cvs ;)

我认为你必须先更新你的工作副本。这会将主分支中的所有更改合并到您的工作副本中。如果这无济于事,只需重新签出到不同的目录,分支并将您的更改复制到新的工作副本中(但要小心,如果其他人更改了这些文件中的某些内容,您将覆盖他的更改)。

于 2011-08-10T00:31:24.647 回答
0

它绝对可以做到这一点,事实上,能够做到这一点是cvs的设计原则之一。

http://cedric.babault.free.fr/TortoiseCVSDoc/UserGuide_en.html#advanced.branching

于 2011-12-19T14:12:34.317 回答
0

这实际上并不难做到:

  1. 将 cvs 根目录复制到新位置
  2. 从 cvs 擦除并重新签出根目录
  3. 分支
  4. 更新到分支
  5. 将您添加或更改的文件从副本复制回主根目录
  6. 添加内容
  7. 犯罪
  8. 享受

编辑:值得注意的是,在第 5 步中,请确保不要将任何“CVS”文件夹复制回来

于 2012-02-16T22:00:56.657 回答