问题标签 [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.
git - 输入项目的文件夹复制版本列表以自动构建 Git 存储库?
所以在过去的几年里,我真的很喜欢在我所有的编码项目中学习和使用 Git。我喜欢有一个所有更改的清晰时间表,并查看何时进行更改。
好吧,我打开了一个在我使用 Git 之前的旧项目。我基本上有一个文件夹列表,用于我随着时间的推移所做的每个“提交”。我总共有 70 多个版本。我想轻松存储这个项目,同时保留所有步骤而不浪费大量空间。
有没有一种自动化的方式来做到这一点?我想要自动做的基本上是以下内容:
文件夹:
要导入 Git 存储库(单个分支):
如果不手动执行此操作,那么完成此操作的快速方法是什么?所有文件夹都在同一个本地磁盘上。
unix - 控制 M ctmpsm -TABLE 命令使用
我正在使用以下命令列出控制 M 作业中特定“作业名称”的完整详细信息。但是,命令的问题是它将检查特定服务器中的所有作业(大约 30000 个作业)。所以很费时间。
ctmpsm -LISTALL ALLFIELDS_FULL|grep "JOBNAME"
我怎样才能只检查特定的表???
我在下面找到了命令。对这个目的有用吗。
ctmpsm -TABLE <-LISTTABLE |-UPDATE |-ADD |-DUDAILY |-REMOVE |-LISTJOBS [FULL]>
git - 将存储库从 Gitlab 迁移到 Azure DevOps
我正在将存储库(.Net、Angular)GitLab
从Azure DevOps
. 找不到有关此迁移影响的太多文档。
我的问题是:
- 是否迁移所有远程分支?所有的提交和评论?
- Azure DevOps 是否支持子文件夹类型的存储库结构?
我可能必须考虑的任何预防措施/最佳实践。
php - php,版本控制和使用语句
是否可以在 use 语句中使用变量?如何使用我用 use 语句定义的特征和其他文件实现版本控制?
我希望能够为所有使用语句分配单个版本。
git - 如何从 IBM Clearcase 迁移到 Visual Studio Team Services
我们正在考虑从 ClearCase 迁移到 VSTS。这些项目相当大,并以各种语言开发,例如 java、.NET、Cobol、脚本、数据库作业、Cognos 等。
我们还需要迁移完整的代码历史记录。
我很好奇是否有人做过类似的迁移并就以下几点提供一些指导:
• ClearCase 到 Team Services 迁移的工具是否可用?
• 这种迁移的先决条件是什么?
• VSTS 能处理这么大的项目吗?
我能够找到关于如何将 clearcase 迁移到 TFS 的足够文档,但不知道这对于 VSTS 是否足够。另外,我从 VSTS 2018 文档中了解到,Git 代码可以与历史一起完全迁移到 VSTS,但不能迁移到 TFS 代码。
因此,如果有人可以指导我如何处理此迁移,我将非常有帮助。
python-3.x - TypeError: __init__() got an unexpected keyword argument 'interactive' (Converting Mercurial repository to Git)
我有一个名为“climate-sensitive-gcm”的 mercurial 存储库,我正在尝试使用 Linux 终端中的快速导出方法将其转换为 git。我在命令行中输入以下内容:
以下错误与 git-fast-import 统计信息一起被取消:
我不明白这些错误是什么意思,也不明白我试图将我的 hg-repo 转换为 git-repo 有什么问题。任何帮助,将不胜感激。
git - git中的hg clone --noupdate等价物是什么?
我们得到了一个完整的系统使用hglib
了相当长的一段时间,我们正在创建一个抽象层来定制系统的一些需求,但我无法理解等价的
hg clone source destination --noupdate
在 Git 中
-U --noupdate the clone will include an empty working directory (only a repository)
https://www.mercurial-scm.org/repo/hg/help/clone
谢谢你的进步。
git - 使用 reposurgeon 将没有中继的 svn 存储库迁移到 git
我正在尝试将旧的 svn 存储库转换为 git。在阅读了几篇描述使用 git-svn 执行此任务的缺点的文章之后,特别是对于具有非标准布局的存储库,我决定尝试一下 reposurgeon。在最初使用来自 Ubuntu 软件包源 (4.3) 的版本后,我切换到最新的版本(4.14;从源代码构建)以防万一。
遗憾的是,到目前为止,我只能生成一个空的 git 存储库。似乎我无法弄清楚如何正确使用 reposurgeon。
这是我要转换的 svn 存储库的基本结构:
- 分支机构
- 1.0.x
- 1.1.x
- 标签
- 发展
- 1.0.0
- 1.0.1
- 1.0.2
- 1.1.0
- 生产
- 1.0.0
- 1.0.1
- 发展
存储库中还有更多内容,但这就是它的要点。这里要注意的重要一点是
- 没有后备箱
- 标签结构不平坦
现在我正在尝试运行最少的步骤。我使用http://www.catb.org/~esr/reposurgeon/repository-editing.html#quickstart作为指导方针,因此在为存储库创建作者地图后,我执行了以下操作:
当我read project-mirror
在 reposurgeon 中运行时(project-mirror 是我使用 repotool 创建的镜像的目录),我得到以下输出:
首先创建一个 SVN 转储(使用repotool export
或svnadmin dump
在我的本地镜像上)并读取它会导致相同的结果。
运行rebuild project-git
产生以下结果:
这将创建一个空的 git 存储库:没有提交、没有分支、没有标签。我不希望我在上面发布的命令链会导致我想要的结果(毕竟文档中甚至提到到达那里是一个迭代过程),但我希望至少有一些提交和/ 或 git 存储库中的分支。
任何正确方向的指针将不胜感激。
PS:还需要注意的是,在此过程中,SVN 服务器可以而且不得以任何方式进行更改。我只有对相关存储库的读取权限。我对此 SVN 服务器没有任何形式的管理访问权限。
git - 从 Git 迁移到具有完整历史记录的 SVN
我有一个独立的 Git 存储库,我想将其迁移到新的 SVN 存储库。至少,我想迁移具有完整历史记录的主分支,但理想情况下我想迁移所有分支和标签。我只需要做一次迁移;我不需要重复这个或做任何双向同步或类似的事情。
根据我在网上可以找到的内容,执行此操作的最佳工具似乎是 git-svn。我觉得我遗漏了一些明显的东西,有一些参数git svn init
或者git svn dcommit
我需要传递,这将使所有这些都正常工作,但我找不到它。
这是我到目前为止所做的尝试:
尝试 1: git svn dcommit 到一个空白的 svn repo。
- “也许存储库是空的。” 是的,它肯定是空的。这就是重点,我目前在 SVN 中的内容为零,我需要将所有工作移到那里。
- 这是一个完全空的 SVN 存储库。甚至没有trunk/tags/branches 目录。
尝试 #2: git svn dcommit 到具有适当基本结构(主干/标签/分支)的存储库。
- 相同的基本结果。
git svn fetch
新创建的 svngit 工作副本 的输出是:- 第一个
git push svntest --all
失败,“更新被拒绝,因为远程包含您在本地没有的工作。这通常是由另一个存储库推送到相同的参考引起的。您可能希望首先集成远程更改(例如,'git pull .. .') 在再次推动之前。”。在执行git pull svntest master --allow-unrelated-histories
并提交该合并后,推送成功。 - 最后,
git svn dcommit
给出了关于空存储库的相同错误。
尝试 #3:使用 GitHub 的 SVN 网桥
- 可以通过 SVN 访问 GitHub 上的 Git 存储库。
- 我将我的 Git 存储库推送到 GitHub,并且能够从 SVN 访问它。(
svn co https://github.com....
) - 通常,
svnrdump
可以在给定 URL 的情况下转储 SVN 存储库(而不是svnadmin dump
需要将存储库作为本地文件系统中的文件提供),但 svnrdump 返回svnrdump: E200007: The requested report is unknown.
- 我能够进行
svnrdump dump -r
一次修订。任何修订似乎都有效,但指定--incremental
或一系列修订(-r 1:2
或所有内容的默认值)会导致报告该错误。 - 显然 GitHub 通过 HTTPS 实现的 SVN 不包括对增量转储的支持。
- 我可以通过 HEAD 进行 1 的非增量转储,但我不知道有什么方法可以将这些连续的非增量转储转回增量转储,以便它可以拥有完整的历史记录。
尝试 #4:在 SVN 中进行初始提交,然后从那里 dcommit
根据 Jeff Mercado 的回答。
在执行所有 git svn 内容之前,我在 SVN 的主干中创建了一个空文件。我第一次通过,dcommit 有到 SVN 的链接,但实际上并没有在初始分支上提交任何内容,然后在切换到另一个分支和切换回 master 时给出了错误。当我重复这些步骤以捕获输出以在此处发布时,它立即给出了错误。回顾命令历史,我看不出有什么不同。无论如何,我仍然无法提交。
c++ - 您将什么数据库迁移系统用于基于 C++ 的项目
在我所有的 PHP 项目中,我都在使用 MySQL DB 迁移解决方案,例如https://phinx.org 这真的很简单。
但是我无法为基于 C++ 的项目找到任何类似的解决方案。您能否分享您如何处理基于 C++ 的项目的 MySQL DB 版本控制,您可以提出任何解决方案吗?