【问题标题】:Using a separate version control system for changes when main version control is not accessible当无法访问主版本控制时,使用单独的版本控制系统进行更改
【发布时间】:2010-03-08 09:44:36
【问题描述】:

这是我的情况:

我现在正在做的项目 使用版本控制系统 (微软团队基金会) 由远程托管和管理 顾客。我负责做一个 之后的大规模重构/错误修复 留下一团糟的人 后面的代码。由于几个原因 我不会在这里详细说明* 我不能 提交版本控制我的 我修补时的增量更改 事情发生了;我没有办法 在那里有一个单独的分支。

这是我的问题:

我想要一个可以在本地使用的版本控制系统。我不能只是继续做“压缩源文件夹并备份它”。我想要跟踪变化。我想要提交消息。我想看看我在几个月内做了什么,什么时候做的,为什么做。在紧要关头,我厌倦了依赖 VS 'undo' 命令并让 cmets 自己跟踪我在做什么以及之前的情况。

我会这样做:

我会在本地安装 mercurial/git 并开始对我自己的目录进行版本控制。

问题是,我不确定这是最好的方法。提示?想法?我对 Visual Studio 或 Team Foundation 都不熟悉,而且似乎找不到我的方法(我不知道事物是如何“命名”的,所以我不知道我在寻找什么) .是否有可能使用这些工具来做我所描述的事情?

*基本上客户不一定要知道我们的首席开发人员在愤怒中退出并留下了我所见过的最可怕的代码混乱;至少有 3 个人“试图修复”他的代码以急于修补错误;这最终出现在一个具有 400 多个长方法的单个类中,包括一个“for”循环、至少 5 个重复但不完全重复代码的地方、未使用的逻辑、错误的 cmets、while(true) 循环,以及增加循环体​​中的“for”计数器以提前查看数组列表。基本上,我们希望客户不会注意到发生了什么,如果他们注意到了,我们可以在他们抱怨时解决它。

【问题讨论】:

    标签: windows visual-studio version-control tfs


    【解决方案1】:

    通常的做法是:

    • git init”直接在你要本地管理的目录中
    • 添加 .gitignore 以不添加任何 VCS 特定的数据或目录
    • git add .gitignore 并提交
    • git add .
    • 提交

    这样,您就有了一个本地存储库,然后您可以克隆、制作分支、补丁,...
    (我这样做是为了ClearCase views for instance

    使用类似命令的类似方法当然适用于 Hg Mercurial。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-05
      • 1970-01-01
      • 1970-01-01
      • 2010-10-30
      • 2011-08-12
      • 2012-02-17
      相关资源
      最近更新 更多