我发现SVN对于文档,个人文件以及其他非源代码使用非常有用.您在版本控制系统中发现了哪些其他实际用途?
我正在尝试将我的更改提交到CVS存储库,但是我收到以下错误:
RCS file: /opt/CZarmen/CVS_REPOSITORY/Z_user/lib/python/StudioCustom.py,v
retrieving revision 1.38
retrieving revision 1.39
Merging differences between 1.38 and 1.39 into StudioCustom.py
M lib/python/StudioCustom.py
RCS file: /opt/CZarmen/CVS_REPOSITORY/Z_user/menu_scripts/Y/ZExtensions,v
retrieving revision 1.46
retrieving revision 1.47
Merging differences between 1.46 and 1.47 into ZExtensions
M menu_scripts/Y/ZExtensions
cvs commit: Up-to-date check failed for `lib/python/StudioCustom.py'
cvs commit: Up-to-date check failed for `menu_scripts/Y/ZExtensions'
cvs [commit aborted]: correct above errors first!
Run Code Online (Sandbox Code Playgroud)
为什么它没有提交我的更改?我如何"纠正上述错误"?
据我所记得,在Eclipse IDE的某些最新版本中,我必须单独安装一个名为“ CVS Integration”的插件,以便对从某些版本创建的项目执行CVS操作,例如签出,更新等。 CVS存储库中的目录。但是,在安装了最新版本的Eclipse“ 2018-09(4.9.0)”之后,从菜单“帮助”>“ Eclipse Market”中使用关键字“ CVS”或“ CVS Integration”进行搜索时,此类插件将不再显示。并且Eclipse工作区中的现有目录/项目无法再更新,即,右键单击CVS文件夹,不再有名为“团队>更新”的项目。知道要恢复CVS功能需要做什么吗?
我曾经粗略搜索过,发现Python没有很好的CVS绑定.我希望能够编写帮助程序脚本来对存储库和项目进行一些细粒度的操作.我不得不求助于使用popen和检查stdout,并stderr再解析这些.它很混乱,容易出错.
是否有适用于Python的CVS集成的高质量模块?您更喜欢哪个模块?为什么?
虽然我在这,但是有一个很好的Python Subversion集成模块吗?我的理解是Subversion有很好的API用于此类事情.
我已经看到了与源控制相关的"尖峰"这个词.
例如,我正在使用的项目有三个顶级文件夹:trunk,branches和spikes.
这个词的含义是什么?
我一直在尝试构建从CVS中获取的eclipse,但找不到从哪里开始?
通常它很简单,制作X,构建X,但我发现这并不容易.有数百个插件,我似乎找不到在哪里构建它们并拥有eclipse IDE.
是否有任何教程可以帮助我完成整个过程?我好像找不到一个.
此外,任何使自动化并使其成为程序化的方法也将是巨大的,但我现在会满足于任何事情.
有没有办法创建文件的差异b/w它在CVS回购中的前两个版本?我不关心修订号和本地签出文件.我需要的是,最后一次提交的差异和提交前的最后一次提交.
有谁知道是否有一个库提供Java的API来管理CVS存储库(例如检查路径)?
我找到了JavaCVS(来自NetBeans)和一个名为JCVS的项目,但两者都不可用.
我们正在改变源代码控制系统,我们目前正在评估git和mercurial.总代码库大约有600万行代码,因此不是很大,也不是很小.
首先让我简单介绍一下当前存储库设计的外观.
我们有一个完整代码库的基本文件夹,在该级别下面有几个不同的上下文中使用的各种模块.例如,"dllproject1"和"dllproject2"可以看作完全独立的项目.
我们正在开发的软件是我们称之为配置器的软件,可以根据不同的客户需求进行无休止的定制.总共我们可能有50个不同的版本.但是,他们有一个共同点.它们共享一些必需的模块(mandatory_module1 ..).这些文件夹基本上包含内核/核心代码和公共语言资源等.然后,所有自定义都可以是其他模块(module1 ..)之间的任何组合.
由于我们目前正在使用cvs,因此我们在CVSROOT/modules文件中添加了别名.他们可能看起来像:
core –a mandatory_module1 mandatory_module2 mandatory_module3
project_x –a module1 module3 module5 core
Run Code Online (Sandbox Code Playgroud)
因此,如果有人决定使用project_x,他/她可以快速检查所需的模块:
base>cvs co project_x
Run Code Online (Sandbox Code Playgroud)
直观地说,将基本文件夹作为单个存储库感觉是错误的.作为程序员,您应该能够查看当前正在使用的项目所需的确切代码子集.你对此有何看法?
另一方面,将每个模块放在不同的存储库中感觉更为正确.但这使得程序员更难以检查出他们需要的模块.您应该能够通过一个命令执行此操作.所以我的问题是:在git/mercurial中是否有类似的方法来定义别名?
任何其他问题,建议和指示都非常欢迎!
PS.我已经搜索了类似的问题,但并不觉得他们中的任何一个都100%适用于我的情况.