ClearCase:2 个分支中的文件相互混淆
Posted
技术标签:
【中文标题】ClearCase:2 个分支中的文件相互混淆【英文标题】:ClearCase: Files in 2 branches obscure each other 【发布时间】:2012-07-10 13:10:20 【问题描述】:我在 2 个不同的分支(例如,开发和发布)中检查了同一个文件(文件名)两次。
这几乎破坏了任何东西,因此我想获取 1 个版本并将其“正确”复制/合并到另一个分支,然后手动(从备份)合并丢失的更改。然后我会丢失 1 个文件的历史记录,但至少 2 个文件会再次连接。
怎么做?
还要注意,由于连接断开,我不能仅仅在做版本树时,两个文件都有不同的版本树。 (这不是 1 个版本树中不同文件的 2 个视图,就像正常/正确的情况一样。)
另外,我认为问题在于文件夹对 2 个不同的文件有某种引用,但不知何故,我无法编辑该文件夹?!
【问题讨论】:
【参考方案1】:那些被称为“evil twins”(在SO question中也有描述) (one less thing to worry with Git ;))
最简单的方法是选择一个分支:
从另一个分支(rmname)中删除文件, 并进行合并。合并将在另一个分支中添加相同的文件。
该过程(rmname
+ merge
)在“Clearcase: How do I merge in a specific file from one view, into another, to avoid the Evil Twin scenario?”中进行了说明
(安德烈亚斯编辑) 您的解决方案效果很好,我为我更改了它,因为我注意到我有一个特定的案例: 该文件变坏了,因为其他人重命名了它......所以它不像你的解决方案那么简单,但我必须“手工”完成,就像
转到X:\FullyQualifiedPath
(VOB 中的正确路径)
用途:
cleartool ln FullyQualifiedName ./FileName
其中FullyQualifiedName
是您获得的名称e。 G。当您说“Send To -> Copy
”时,来自 VersionTree(类似于//view
,之前删除file:
)。这将创建链接
之后,您可以再次在 ClearCase Explorer 中看到所需的版本。
【讨论】:
非常感谢!我添加了我的方式,类似于您引用的帖子中的一种方式(使用 cleartool ln)。工作得很好。期待很快再次使用不同的版本控制系统。 :) @Andreas 感谢您的反馈。我已将您的编辑添加到答案中。以上是关于ClearCase:2 个分支中的文件相互混淆的主要内容,如果未能解决你的问题,请参考以下文章