每个开发人员应该知道的Clearcase版本控制系统的核心概念是什么?
答案 0 :(得分:144)
答案 1 :(得分:19)
ClearCase是一种可以使用的野兽。慢,马车,昂贵。我为应对CC所做的一些事情是:
答案 2 :(得分:16)
答案 3 :(得分:5)
Eric's Source Control HOWTO是一个很棒的指南,与工具无关。
答案 4 :(得分:4)
我在6年的大部分时间里使用clearcase,并且通常认为它是可以容忍的。它确实有一定的学习曲线但是一旦你习惯了怪癖,你就可以顺利地使用它。一个非常称职的CC管理员知道他正在做什么对于除了琐碎的设置之外的任何事情都是必不可少的。除非你有一个,否则人们会遇到问题,很快就会有人谈论“ClearCase”问题。然后,管理层将不得不通过切换到其他方面进行干预,从而导致每个人都浪费时间。 CC不是一个糟糕的产品,它有时候很难被理解。
以下是我发现的一些重要概念,其中一些概念并不仅仅是CC -
答案 5 :(得分:4)
如何在ClearCase上使用git!
答案 6 :(得分:2)
在我看来,分支和合并是任何源代码控制系统中最重要的概念(当然,除了版本本身之外)。
一旦你理解了它是如何完成的(并且Clearcase做得非常好,我们甚至做了一个小的变化作为分支并重新合并,而不是我曾经用RCS或CVS做过的事情),你会找到你的生活变得更容易。
答案 7 :(得分:2)
某种方式偏离主题,但是 - 我不知道几乎没有开发人员对ClearCase感到满意。我被告知它应该具有复杂的功能,但作为一个svn和git用户,我不可能想到我在git或subversion中遗漏的东西。 所以这是人们应该了解的关于ClearCase的东西 - 大多数开发人员都非常乐意使用像subversion或git那样简单的东西(是的,甚至git更容易掌握),甚至在我知道如何完成ClearCase中最简单的任务之后,我有了不断感觉ClearCase对我不利,而不是对我。
答案 8 :(得分:1)
我使用Clearcase和SVN成功完成了大量的大中型项目。两者都是很好的工具,但使用它们的团队需要记录流程。创建一个描述如何使用版本控制系统的流程。
1)查找或创建版本控制系统的最佳实践文档。这是一个for subversion,使其适应您的Clearcase流程。所有开发者必须遵守相同的游戏计划。
基本上决定你是否要“永远分支”或“永不分支”。
Never Branch Scheme:
始终分行计划:
'需要时分支'是一种妥协,可能对许多项目都有效。
2)使用Clearcase(和Subversion)你必须学会合并 - 合并是你的朋友。学习使用Clearcase的合并功能或使用Beyond Compare或emacs-diff等工具。如果您的项目模块化很好(许多小的解耦文件),那么在合并期间您将受益更少(或没有)冲突。
3)享受。
答案 9 :(得分:1)
如果您使用的是ClearCase,请确保使用随附的UCM和复合材料组件。
它使您的所有分支/合并毫不费力。 我说的是主要的重组组织,运行6个月,涉及成千上万的更改,包括目录重命名,文件重命名等,自动解决99.9%的增量。
另外,我们只使用SnapShot视图,而不是动态视图。我们的快照视图加载速度比从网络驱动器拖放(Windows)相同的源树更快。
我对UCM的唯一抱怨是历史不能跨越组件。如果将组件拆分为多个新组件,则每个新组件都从/ main / 0开始。
答案 10 :(得分:0)
如何在项目中实施版本控制工具取决于您的项目规模和范围以及团队早期的经验。 ClearCase是大型项目开发人员和项目规模的绝佳工具。 在使用版本控制工具时,管理分支是非常重要的前景之一。 没有分支和合并,它是在项目生命周期中的蛋糕步行。 但是你不能因为它可以让你锁定和奇妙的并行开发而远离合并。
答案 11 :(得分:0)
有一个非常方便的命令cleardescribe
多次有用。可用于获取标签和分支的详细信息。语法是:
cleardescribe lbtype:<LABELNAME>@\<VOB-NAME>
cleardescribe brtype:<BRANCHNAME>@\<VOB-NAME>
具体来说,这可以让您知道标签是应用于哪个分支,哪个分支是父分支到有问题的分支。