在clearcase快照视图中工作时,我想使用自己的diff.
据我所知,运行" cleartool diff" 时无法指定diff工具,因此我认为我可以运行像" mydiff <predecessor file> <modified file in my view>" 这样的东西,但我对ClearCase不太了解能够找到"前任"文件"以反对.
有什么办法吗?
忘了提到(直到现在,在阅读了处理windows的前两个响应之后),这是在Unix上,我不允许使用ClearCase配置.
当我开始在Delphi 7 IDE中编辑它时,我想自动检出文件.
ClearCase是我的版本控制系统,我真的很讨厌在开始编辑之前签出文件.它总是打破我的思维流程:我正在尝试解决问题,找到我需要更改的地方,尝试编辑它,失败因为文件是只读的,打开clearcase,搜索文件,最后结帐,尝试编辑文件再次失败,因为IDE仍然认为它是只读的,告诉IDE不是readonly.当我最终回到代码时,我忘记了我正在尝试做的事情.
我发现了这个简洁明了的ClearCase IDE集成代码.它可以工作,但使用已弃用的ToolIntf单元.我添加了几个快捷方式.这是它的简化版本(没有尝试编译):
unit clearcase;
interface
uses ToolsApi, ToolIntf;
implementation
uses
Windows, Dialogs, Classes, ExptIntf, Menus, ShellApi, SysUtils;
type
TDelphiClearcase = class
private
FClearcaseMenu,
FDoCheckOutPasDfm,
FDoCheckInPasDfm : TIMenuItemIntf;
procedure ExecCommand(const command: string; path: PChar = nil);
public
destructor Destroy;override;
procedure DoClick(Sender: TIMenuItemIntf);
property ClearcaseMenu: TIMenuItemIntf read FClearcaseMenu write FClearcaseMenu;
property DoCheckOutPasDfm:TIMenuItemIntf write FDoCheckOutPasDfm;
property DoCheckInPasDfm: TIMenuItemIntf write FDoCheckInPasDfm;
end;
var
dcc: TDelphiClearcase = nil;
{ TDelphiClearcase }
destructor TDelphiClearcase.Destroy;
procedure Remove(item: TIMenuItemIntf); …Run Code Online (Sandbox Code Playgroud) 我目前正在研究ClearCase,现在正在迁移到GIT.但是我们需要这种迁移,所有工作都将在GIT中完成,数据将被同步支持ClearCase流.我们将在GIT和CC中使用相同的分支名称和流名称,因此编写脚本应该不是问题.这里的问题是,
有人可以建议哪个是同步CC和GIT的最佳模型
将CC中的所有Vobs作为GIT中的单个回购,并将CC中的主要流作为GIT中的各个分支. - 单GIT仓库(VOBS)和许多分支(CC流). - 由于VOB被保存为具有许多分支的单个仓库,因此占用的空间更少.
将重要的CC分支作为独立的GIT存储库,每个存储库具有所有CC VOB. - 许多CC分支的许多GIT仓库 - 这将占用大量空间,因为VOB将被复制.
您认为哪种方法是与ClearCase保持同步的最佳方式
我们正在努力将我们的CC Vobs转换为GIT,我们有基本和UCM的vobs,我看过很多主题没有明确的步骤.
是否有任何工具或步骤可以保留历史和分支?
我读过了 :
,既不适合我的需要.
在工作中,我们使用远程CVS仓库.通过eclipse CVS工具和内置eclipse插件来处理对此repo的访问,这些插件构建在eclipse的团队工具之上.这意味着我们无法转向更好的vcs.
但是我想在我的本地机器上使用Git(以启用个人分支),这样我就可以完成以下任务:
在Git中创建分支,然后完成并合并回我的本地主干,使用eclipse团队工具提交回cvs repo等.
我的计划大致如下:
我计划将eGit用于eclipse,但我相信CVS和.git文件将争夺版本控制的所有权.
是否有任何工具或建议的工作流程来帮助我管理这个?Git与CVS文件的搭配程度也是如此.反之亦然,因为我不希望它们相互感染.
之前的链接没有用的原因是他们直接从git repo直接进入cvs repo,这让我很担心,因为我不想意外感染cvs repo.
还应该说GitRepo中的更改不需要持久存储到CVS repo中,例如我不需要看到对远程CVS中反映的git repo的每次推送.
〜感谢您的阅读.
我们在Jenkins服务器上运行每晚构建,并使用ClearCase作为源控制管理.
由于ClearCase是以文件为中心的,因此文件签入逐个操作.与SVN或Git(以存储库为中心)相反,开发人员的修改不是原子地提交的.
这在夜间没有问题,因为开发人员不再活动,ClearCase服务器在凌晨1点锁定.
但是这里有一个例子,当开发人员白天活跃时可能会引起关注(假设每半小时运行一次):
10:55 AM - Developer1 checks in element1
10:55 AM - Developer1 checks in element2
10:56 AM - Developer1 checks in element3
11:00 AM - ### Jenkins runs BUILD #1 ### <-- succeeds
11:29 AM - Developer2 checks in element1
11:29 AM - Developer2 checks in element2
11:30 AM - ### Jenkins runs BUILD #2 ### <-- fails (element3 is missing)
11:29 AM - Developer2 checks in element3
Run Code Online (Sandbox Code Playgroud)
因此,版本构建(又名"ASAP构建"或字面意思是"持续集成")值得考虑使用ClearCase还是我们谴责永远满足于夜间构建?
version-control continuous-integration clearcase atomicity jenkins
我工作的公司专门使用Clearcase.我觉得学习和使用它是不值得的,因为我的项目不会涉及太多人(最多3人),也不会涉及花哨的开发流程.当我们根据我的建议提出"IT支持和统一源代码控制"这一点时,我如何说服我的经理使用单独的源代码控制?或者这一点是否有效,我应该选择Clearcase?
谢谢...
PS:我在考虑使用Subversion.