问题标签 [version-control-migration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
version-control - 如何将 TFS 2008 项目版本控制迁移到 TFS 2010?
自从树年以来,我的公司就安装了 Microsoft Team Foundation Server 2008。我安装了 TFS 2010,我想将版本控制从 2008 迁移到 2010。我尝试使用Team Foundation Server 集成工具(2011 年 3 月发布),但尝试迁移时出现错误/冲突:
目标服务器http://tfs2008:8080/ 不是 TFS2010 服务器
我不知道为什么它说目标而不是源,即使我把它(tfs 2008)放在左边的源上!!
谁能知道发生了什么?
谢谢你和亲切的问候。
version-control - Git的替代品?
是否有任何具有 Git 功能但不受病毒许可的版本控制软件?- 根据我的定义,“病毒许可”是要求派生软件处于相同或同等限制性许可下的许可。
我对 GPL 的争论或讨论不感兴趣;它超出了这个问题和网站的范围。
谢谢。
asp.net-mvc - TFS 和单一版本
对于这篇文章的长度,我深表歉意,但我需要包含很多信息才能得到正确的答案。我希望这不会阻止响应...
我们的商店过去曾使用经典 ASP 对网站进行编码,并将一些较新的 ASP.NET 网站配置为网站。众所周知,这意味着源文件(*.asp、*.aspx和*.aspx.vb(或 *.aspx.cs))文件按原样部署到开发和生产服务器。
配置管理过程是(现在仍然是)完全手动的,包括以下步骤(要求):
- 复制修改后的文件并将它们存储在“发布”文件夹中以进行归档。
- 复制将被替换的生产文件并将它们存储在“存档”文件夹中以便于回滚。
- 在诊断发布后问题时生成源文件前后的差异报告以供代码审查或一般参考。
- 编写更改代码的开发人员不是执行生产版本的人。原始开发人员需要将源文件移交给其他开发人员,以进行一些额外的测试和生产部署。
为了使情况变得更加困难(不是上面的……而是我在下面谈论的),我们没有遵循正式的发布时间表。随着个别错误或增强功能的完成,它们将被释放。这意味着我们可以轻松地每周向一个站点发布多个版本。一个给定的网站甚至有可能在同一天为各个页面获得两个不同的版本!
自从我加入以来,我一直在尝试将团队过渡到更新的技术,例如 ASP.NET Web 应用程序和 ASP.NET MVC。(我们还承担了用于非 Web 进程的独立应用程序和控制台实用程序的责任……所以我的困境仍然适用。)
这些技术与遗留技术的区别在于预编译。无需部署代码隐藏文件(*.aspx.vb(或 *.aspx.cs)),而是部署 dll 或 exe。这种类型的部署包提出了几个问题(问题??)。
- 编译源代码后生成差异报告。虽然新修改的源文件位于开发人员系统上,但生产副本是编译后的副本。
- 确保与其他错误或增强功能相关的更改不包含在特定版本中。这将适用于原始开发人员和执行发布的人员。
- 允许原始开发人员将更改的文件传递给其他开发人员进行构建、测试和部署。
到现在为止,我是团队中唯一从事此类网站和应用程序的开发人员,因此不存在上述冲突和问题。(我跳过了差异报告步骤,我自己进行了部署。)但是,我试图推动团队的其他成员接受这一点,并允许更好地分配错误和增强任务。
我们目前正在使用 VSS,但我正在推动(并且很可能会成功)将我们转移到 TFS。我的一些想法是
设置一个单独的构建系统供开发人员使用来进行部署。这将解决两个问题 - (1) 开发人员之间的 Visual Studio 和其他库的不同版本/补丁,以及 (2) 执行发布的人已在本地签出文件以进行其他更改的实例。(当然,这并不能保证构建系统和原始开发人员之间的差异,但至少这意味着发布来自一致的配置。
使用标签仅标记已修改的文件。我的问题是,虽然我可以识别(并下拉构建)修改后的文件,但我如何识别需要包含在构建中但尚未更改的文件。同样,这个想法是不包含与未发布更改相关的已签入文件。
使用标签标记发布的所有文件(修改后的文件和未更改的文件)。我的问题与上一个问题类似......我如何确保另一个开发人员签入的文件(比如他们去度假)进行了不相关的更改,并没有标记并包含在此构建中。
使用标签,我可能会编写一个脚本来为标记版本和先前标记的版本生成差异报告。如果该过程正常工作,那么应该会导致特定版本中包含哪些更改..?
还有其他想法、顾虑、兴趣点吗?虽然我确实对流程有一定的灵活性,但某些要求(如差异报告或某种轻松查看差异的方法以及拥有单独的开发人员/部署人员)很可能是不可触及的。
非常感谢您对此提供的任何帮助。
git - 转换为git时,我应该如何处理单个目录svn checkout?
我很快将把我的应用程序部分从使用svn
支持的存储库转换为使用git
一个。
我以前用过git-svn
,但整个团队都被转移到了git
,我被要求成为这一举动的先锋。虽然我很高兴我了解如何完成大部分动作,但有一个方面我还没有解决。
我的配置存储库的一个目录一直用于跟踪独立 Windows 机器上外部应用程序的脚本目录。该应用程序的脚本目录位于应用程序安装目录中,因此svn
我在适当的位置检查了该目录。
我希望我能够继续使用这种结构,但我的研究表明,狭窄的克隆git
需要你保持相同的相对结构,这在我的情况下会很困难。
明确地说,我想映射 to 的myrepo:config/scripts
内容C:\application\scripts
。
据我所知,我有几个选择:
1. 为这些脚本文件使用单独的存储库。
这可能是首选,因为它允许我将 repo 克隆到正确的位置。
不幸的是,目前没有允许将配置数据(这些脚本就是这些脚本)存储在配置目录下以外的任何地方的结构。因此,这将需要对我们的存储库进行一些重组,而不是直接转换svn
为git
我们希望的。
2. 使用连接点。
我可以将目录的git
工作副本放在config
其他地方C:\
,然后使用连接点使目录显示为应用程序目录的子目录,就像Ger4ish 建议在 unix 上使用符号链接一样。
不幸的是,我没有对该机器的管理员访问权限,所以这并不像最初看起来那么简单。
其他选择?
我想知道是否有我错过的选项。
查看Git 1.7.0 中稀疏结帐问题的答案?我可以得到一些方法,但是保持结构相同的要求以及检查到特定位置的需要意味着这种方法不起作用。
svn - 切掉 Subversion 存储库的一部分?
我有一个 Subversion 存储库,其中包含多个项目。我想“切掉”一个或多个这些项目并将它们移动到自己的存储库中,理想情况下是完全保真(即保持所有版本历史不变)。
这甚至可能吗?如果是这样,技术是什么?
编辑/澄清:我知道分支和标签。这不是我要问的。我想获取一个现有的存储库并将其拆分为几个较小的存储库,可能在不同的物理介质上。
tfs - 如何将 Mercurial (Hg) 源代码存储库迁移到 TFS?
这似乎与大多数人试图做的相反。我想从 Mercurial (Hg) 存储库中导出所有变更集并将它们导入 Team Foundation Server 2010 并包含历史记录。我不可能是唯一一个去TFS的人,对吧?看起来我可以从 Hg 导出到 Git,然后从 Git 导出到 TFS。有没有更好的办法?
c++ - 提交快照时删除 SVN 中丢失的文件
我正在从 StarTeam 迁移到 SVN,并且我决定为我们的每个版本拍摄快照。但是,在处理版本 1 中存在的文件时,我遇到了一个问题,因为版本 2 被删除了。
文件丢失时如何提交快照?
我已经尝试完全删除 trunk/src/ 文件夹,然后用新的 /trunk/src/ 文件夹替换它,但这似乎会导致与丢失文件发生冲突。当我 svn add" 一切时,TortoiseSVN 似乎检测到文件丢失了,当我提交时,它似乎试图删除丢失的文件,但似乎失败了。大概这是因为它在删除文件后试图删除目录在那个目录里?
我收到以下错误:
这个问题的解决方案是什么?当然,我不是第一个遇到这个问题的人,但我似乎在 google 或 stackoverflow 上找不到任何东西。有些人建议运行一个脚本来做到这一点,但我仍然对这个过程感到困惑。我是否需要删除旧的主干文件夹,以便在本地删除丢失的文件?或者我应该用脚本区分和删除?
谢谢!
旧(不清楚)帖子:迁移到 SVN,对删除旧文件感到困惑
编辑:
这是从一个快照到下一个快照。我正在从不同的存储库(StarTeam)迁移,所以我的主干中没有任何东西。我只想检查所有不同的快照并删除已删除的文件。如果我在后备箱中没有任何东西,标记不是一个坏主意吗?
git - Git 和 tfs:我可以只让中央仓库与 tfs 通信吗?
我想将我的团队从使用 TFS 进行版本控制转移到 git。
有什么理由我不应该做以下事情:
- 使用 git-tfs 创建中央 git 存储库
- 让每个开发人员克隆中央存储库,从中提取并推送到它
- 然后只从中央仓库更新 tfs?
谢谢!
svn - SVN 不再在所有子文件夹中写入 .svn?
我最近将我的 SVN 客户端从 1.6.9 升级到 1.7.2,在转换为新格式后,我注意到每个子文件夹不再有 .svn。对于我的特定配置,这不是很方便。
有没有办法撤消此操作或恢复到 CO 中的每个子文件夹都有 .svn 的旧行为?
svn - 将 Mercurial (hg) 存储库转换为 Subversion (svn)
我需要将现有的 Mercurial 存储库转换为 Subversion,我尝试使用以下命令:
我从以下主题中获取:
问题是,在启动此命令后,转换显然成功开始和结束,但我只在 PWD 和 subversionpath 中获得一个“工作副本”目录,其中一个文件夹具有半空文件和目录为“db”,“lock”,等等......我不知道如何解决这个问题。谢谢