如何在Jenkins中清理工作区?我AccuRev用作版本控制工具.
我freestyle在Jenkins 创建了项目.
我的问题是关于Git处理分支的方式:无论何时从提交分支,此分支都不会从父分支接收更改,除非您通过合并强制它.
但是在其他系统如Clearcase或Accurev中,您可以指定分支如何填充某种继承机制:我的意思是,使用Clearcase,使用config_spec,您可以说"获取在分支/ main/issue001上修改的所有文件"然后继续使用/ main或具有此特定基线的那些".
在Accurev中,您还有一个类似的机制,让流可以从上层分支(流如何调用它们)接收更改,而无需在分支上合并或创建新的提交.
使用Git时不要错过这个吗?你能枚举这种继承是必须的场景吗?
谢谢
更新请阅读下面的VonC答案,以实际关注我的问题.一旦我们同意"线性存储"和基于DAG的SCM具有不同的功能,我的问题是:哪些是真实生活场景(特别是对于OSS以外的公司),线性可以做DAG无法做到的事情?他们值得吗?
我理解git,Subversion,CVS和无数其他源代码控制系统.
我已经开始使用Accurev而且让我很困惑.
我相信我需要形成一个与其他SCM相关的心理模型.理想情况下相对于git,因为我理解git是最好的.
我会将git解释为"提交的有向图,其中提交是diff,父(或父)哈希,以及自身的哈希." 您可以轻松地从那里继续解释像rebase这样的概念以及合并的实际情况,快进与实际合并等等.我发现在大约15-20分钟内教新用户复杂的git概念很容易.
我真的很想了解那个级别的Accurev.所以...
什么是Accurev如何工作的一次句抽象,可以解释它的行为?
我希望我的心理模型回答的一些问题示例:
有没有人使用Accurev进行源代码管理?我们正在(最终)从StarTeam切换到Accurev.
我最初的印象是GUI工具严重缺乏,但底层引擎和分支作为流概念是令人难以置信的.
我们面临的最大困难是评估我们自己的与starteam接口的DIY工具,要么用DIY新工具替换它们,要么找到并购买适当的替代品.
此外,是否有人使用AccuWork组件进行问题管理?Starteam有一个非常好的变更请求系统,而AccuWork并没有接近匹配它.我们正在评估使用Accuwork,或购买第三方软件包,如JIRA.
意见?
我的公司使用Accurev进行源代码控制,并且为了它的所有好处,有一个简单的操作,我无法弄清楚如何完成.
通常我们会有人在我们的流结构中意外地将文件推得太远 - 例如,从"开发"流到"发布"流."取消推广"此文件的最佳方法是什么?也就是说,要将旧版本的文件恢复到"Release"流中,并将文件的新版本保留在它所属的"开发"流中?
只需对Release流中的文件执行"Revert to Backed"或其他Revert操作,就会导致旧版本的文件传播到Development中,或者使文件完全消失.
在上面的例子中,开发人员必须通过在流上设置基准时间来跳过箍,或者使用命令行工具来检查旧事务,以恢复文件.有时候有问题的人是非技术性的,所以这不是一个好的解决方案.
我还考虑过将文件移动到"更高地"的流,还原,然后再将它们交叉推广到下游.这看起来真的很笨拙.
似乎Accurev模糊不清以至于谷歌没有帮助,所以我向StackOverflow的好人寻求帮助 - 有没有人想出"Accurevy"的方法来实现这一目标?
我愚蠢地删除了我工作过的工作空间的内容.
我想重置它,并认为我将能够从accurev再次下载它,显然它比那更复杂......
所以我几乎陷入困境,我有一个空目录作为工作区,任何方法来解决这个问题?
我可以在GUI中看到我想要重新下载的流.
我过去已经为它打开了一个工作区,所以我可以看到我已经连接到它了.
有没有办法重置这个工作区?
谢谢.
我感兴趣的是使用传统SCM产品(ClearCase,AccuRev,Perforce等)和Git对分布式团队的大型项目的价值(或缺乏).
在提高团队活动可见性方面是否有显着的增值?控制分支和合并?访问控制和安全性?发布工程?其他因素?
或者Git本身更好吗?或者是否有一个开源SCM,它将等同于上面提到的商业产品?
谢谢.
有没有人知道将Accurev'depot'及其完整历史输出到例如git或mercurial的简单方法?甚至通过第三方系统?除非我错过了明显的东西,否则我无法通过谷歌找到任何东西.
如果没有,一个额外的问题,是否可以基于具有特定时间戳的补丁构建git/mercurial存储库?换句话说,只需让accurev将其历史记录转储为一组补丁并将其导入存储库.
是否有任何命令可以让我从Accurev中删除工作区?我尝试了accurev rmws WorkspaceName,它说它删除了工作区,但是当我尝试重新创建工作区时,它给了我工作区已经存在的消息.
我很感激任何帮助.