Articles of 版本控制

如何在更新时反映与主人更换叉?

假设我从Github分叉了一个repo,现在有两个项目源,一个是所有者资源库中的主要分支,另一个是我的fork中的主分支。 现在我遇到了这样的问题。 假设在我的项目中有一个像这样的代码的文件自述文件 主题完成 – [ ] Introduction – [ ] [The Evolution of topic name(video)] – [ ] [Background story] – [ ] [Improvements] – [ ] [Problems] – [ ] [COnclusion] 所以我已经分叉我的回购和每个主题完成后,我会标记一个X,并保存在我的本地回购这样的文件。 – [X] Introduction – [X] [The Evolution of topic name(video)] – [ ] [Background story] – [ ] [Improvements] – [ […]

SVN签出失败,“块分隔符无效” – 可以做什么?

在结帐中间( http://aima-java.googlecode.com/svn/trunk/ ),客户端停止,出现错误,确切的错误信息如下: org.tigris.subversion.javahl.ClientException: RA layer request failed svn:REPORT of '/svn/svn/vcc/default': Chunk delimiter was invalid 我GOOGLE了错误,但无法find解决scheme。 我现在唯一知道的是这个问题是由不兼容的svn版本造成的。 我从普通的Ubuntu的回购使用svn 1.6.12 。 这个错误对多个客户端来说是可重现的(在Eclipse和RabbitVCS上testing),因为它们都使用相同的后端。 对于如何处理这个问题有什么build议,并避免将来呢? 谢谢

在Linux上使用Team Explorer Everywhere设置工作区

我在使用Team Explorer Everywhere命令行客户端(TEE-CLC-10.0.0)创build工作区和从Team Foundation Server下载文件时遇到困难。 我已经得到了创build工作区: $ ../tfs/TEE-CLC-10.0.0/tf -login:secretUsername,secretPassword -server:http://secretHost:8080 workspace -new KOLOBI Workspace 'KOLOBI2' created. 然后我想从服务器下载文件到我的工作区: $ ../tfs/TEE-CLC-10.0.0/tf -login:secretUsername,secretPassword -server:http://secretHost:8080 get -recursive -all -force . An argument error occurred: Items must reside in a workspace that has been previously used on this computer. 我想我错过了一个步骤是将本地目录添加到工作区或类似的东西。 但我不知道如何做到这一点能够下载文件。

如何从Linux访问Team Foundation Server(TFS)

如果这个问题不是特定于VCS的(因此是程序员比系统pipe理员更了解的那种),那么我会问服务器故障或超级用户。 也就是说,我如何从Linux访问TFS? 是否有一个客户端应用程序可以运行在Linux上,或者也许是一个TFS到SVN的桥梁,可以在Windows上运行,并通过Linux上的SVN访问?

为相关文件中的新版本提供版本号(文档)

我会有兴趣知道你在那里如何处理新版本问题的版本号。 如何处理相关文件(如手册页等)中的版本号 该软件是用gnu工具链构build的,所以autoconf,automake等等可用于应用程序的版本号。 这样的信息可以被重复使用。 git被用作vcs。 一种可能性是在Makefile.am中引入一个额外的新目标,该目标执行sed / awk来replace所有关联文件中的版本号和date。 这个目标可以在新版本开发的开始(分支之后)被调用一次。 然后,项目可以build立正确的信息时,人们会做项目的git克隆或释放tarball完成。 当然,开始开发新版本时,必须记得运行这个目标。 另一个select是用dist钩子来执行sed / awkreplace。但是这会让项目的git仓库处于一种状态,没有正确的版本号码与关联的文件相关联。 我更喜欢做第一个解决scheme,因为它也logging了git历史中的正确版本号。 在进行sed / awkreplace时,你更喜欢使用“in-file”还是使用autoconf / automake工具中的模板in-file。 我看到两种方法的优点和缺点。 你如何处理关联文件的版本控制 。 在开发阶段开始的时候是否改变它们,在出货之前是否改变它们,你们是做replace还是更喜欢使用模板? 谢谢。

有没有一个可以接受的git-svn的Linux目标客户端?

我的雇主使用颠覆版本控制,这是不太可能改变。 我有兴趣了解更多关于git的知识,并使用git-svn与我的雇主的Subversion版本库进行交互。 我的问题是:如果我开始使用git-svn,我需要从命令行执行一些还是全部的版本控制工作? 还是有一个(Linux)的GUI客户端,可以执行所有的git-svn相关的任务,我将需要? 更新:根据迄今为止的答案,似乎没有git-svn的GUI客户端。 不过,我想请注意Giggle GUI客户端的这个特性请求 ,以certificate这样的function有一些兴趣。 希望在未来的几个月里,可以在这个问题上增加一个积极的答案。 (事实上​​,我认为在不久的将来,与颠覆交互的最佳方式可能是使用GUI客户端来进行混帐!) 更新2:最近发布的2.1版本的SmartGit完全支持Git / SVN集成。 这certificate至less有一个GUI客户端允许Git和SVN一起使用。 可能还有更多。

SVN就地导入和结帐

使用Linux命令行和Subversion ,是否可以创build一个目录并添加版本控制? 基本上,我想将目录导入到一个新创build的存储库中,但也可以将目录作为工作副本,而不必检出。

SVN:忽略已经提交的文件

我有一个使用Subversion版本控制的设置文件。 每个人都有自己的这个文件的副本,我不需要承诺。 但是,正如我所说,版本控制下已经有一个副本。 我的问题是: 如何从版本控制中删除此文件,而不删除所有人的文件,然后将其添加到忽略列表,所以它不会被提交? 我使用的是Linux命令行svn。

我在哪里可以了解各种可用的源控制系统的优缺点?

我想比较和对比各种源控制系统。 任何好的参考?

没有bash / cygwin的git

我在一台vista笔记本电脑上,第一次尝试git。 我安装了msysgit版本 ,并在桌面上安装了“git bash”快捷方式。 当我运行它时,似乎运行在cygwintypes的框中,其中C:\ is /c/ 在/c/是C:\的Windows命令行中使用git安全吗? 这是否与git预期的方式产生冲突? 那么,如果我从bash / cygwin控制台init ,然后从Windows控制台commit ? 这是否会造成麻烦?