首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

是否可以在保留历史记录的同时将单个文件从一个SVN存储库迁移到另一个SVN存储库?

是的,可以在保留历史记录的同时将单个文件从一个SVN存储库迁移到另一个SVN存储库。

要实现这个目标,可以使用SVN的svnadmin dump命令将源存储库导出为一个备份文件,然后使用svnadmin load命令将该文件导入到目标存储库中。这样,所有的历史记录都将被保留,并且可以将单个文件迁移到目标存储库中。

具体步骤如下:

  1. 在源存储库中执行以下命令,将存储库导出到一个备份文件中:
代码语言:txt
复制
svnadmin dump /path/to/source/repo -r LATEST > /path/to/backup/file

其中,/path/to/source/repo是源存储库的路径,/path/to/backup/file是备份文件的路径,LATEST表示最新的版本。

  1. 在目标存储库中执行以下命令,将备份文件导入到目标存储库中:
代码语言:txt
复制
svnadmin load /path/to/target/repo < /path/to/backup/file

其中,/path/to/target/repo是目标存储库的路径,/path/to/backup/file是备份文件的路径。

这样,所有的历史记录都将被保留,并且单个文件可以被迁移到目标存储库中。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Git 中文参考(六)

克隆 SVN 存储时,如果没有使用描述存储布局选项(–trunk, - targs, - .branches, - stdlayout), git svn clone 创建一 Git 存储具有完全线性历史记录...只需另一个mark命令中重复使用相同<idnum>,就可以现有标记移动到另一个对象。 original-oid 提供原始源代码管理系统中对象名称。...--prune =所有修剪松散对象,无论其年龄如何,如果另一个进程同时写入存储,则会增加损坏风险;请参阅下面的“注意”。 --prune 默认开启。...另一方面,当 git gc 与另一个进程同时运行时,存在删除另一个进程正在使用但尚未创建引用对象风险。如果其他进程稍后添加对已删除对象引用,则这可能只会导致其他进程失败或可能损坏存储。...可以谨慎行事,导致捆绑文件包含目标中已有的对象,因为目的地解包时会忽略这些对象。 例子 假设您要将历史记录从计算机 A 上存储 R1 传输到计算机 B 上另一个存储 R2。

23410

SVN移到 Git

SVN移到 Git 准备工作 确认所有用户本地修改都签入到服务器, SVN 源代码分支尽可能合并到主干, 已经发布做好归档信息, 并备份 SVN 。...将用户映射到 Git 创建一用户映射文件 SVN 用户映射到 Git 用户, 这样可以保留用户签入历史信息, 比如用户输入修改记录等, 这个文件看起来是这样子: svnuser1 = gituser1...克隆 SVN 假设 svn 布局是标准 trunk 、 branches 以及 tags , 运行下面的命令开始克隆 svn : git svn clone -..., git 本地就有了完整历史记录。...提交到 Git 现在可以放心代码提交到自己 git 服务器了, 命令如下: git remote add origin git@github.com:userid/project.git git

81040
  • 01.SVN介绍与安装

    这些数据放置中央资料档案(repository) 中。 这个档案很像一普通文件服务器, 不过它会记住每一次文件变动。 这样你就可以把档案恢复到旧版本, 或是浏览文件变动历史。...如果两程序员同时修改了同一文件呢, SVN可以合并这两程序员改动,实际上SVN管理源代码是以行为单位,就是说两程序员只要不是修改了同一行程序,SVN都会自动合并两种修改。...Subversion中,你可以增加(add)、删除(delete)、复制(copy)和重命名(rename),无论是文件还是目录。所有的新加文件从一、干净版本开始。...一次提交不管是单个还是多个文件,都是作为一整体提交。在这当中发生意外例如传输中断,不会引起数据不完整和数据损坏。 2、重命名、复制、删除文件等动作都保存在版本历史记录当中。...可以使用下面命令检查是否安装了。 svn --version 如果 Subversion 客户端没有安装,命令报告svn命令找不到错误。 ?

    1.5K90

    GitHub 官宣,彻底淘汰 SVN!!

    而且,根据 GitHub 说法,每个月只有 5000 存储收到 SVN 请求,其中仅 0.02%请求通过 Subversion 端点发送。...与 Git 使用分布式模型相比,SVN 客户端 - 服务器模型显得比较老派,变更会先被存储本地,并在推送到上游代码仓库时被分发至中央历史记录(及其他分支)。...各种重要文件——特别是那些大型二进制文件——都可以进行“锁定”,防止其他开发人员我们处理同时做出变更。另外,文件、分支、标签等一切都以目录形式存在。...虽然有一条命令可以删掉分支,但它仍然会被保留历史记录中。Git 分支就更轻松易用,能在必要时直接删除。” 很明显,随着新一代版本控制系统诞生,SVN 失去了其优势地位。...而大量用户针对单个代码仓库执行提交并发需求,一定会超过文件系统访问承载上限。谷歌和 Facebook 发现,Mercurial 能够适应这类数据存储需求,但 Git 不行。

    1K30

    Git 相关问题

    SVN 是集中版本控制工具 2.它属于第3代版本控制工具 2.它属于第2代版本控制工具 3.客户端可以在其本地系统上克隆整个存储 3.版本历史记录存储服务器端存储中 4.即使离线也可以提交 4.只允许在线提交...每个开发人员都可以“克隆”我图中用“Local repository”标注存储副本,并且在他硬盘驱动器上具有项目的完整历史记录,因此当服务器中断时,你需要所有恢复数据都在你队友本地 Git...还有一中央云存储,开发人员可以向其提交更改,并与其他团队成员进行共享,如图所示,所有协作者都在提交更改“远程存储”。 ? Git 架构 Q3. Git 中提交命令是什么?...,你回答时也要保包含这两答案,因为根据具体情况可以使用以下选项: 删除或修复新提交中错误文件,并将其推送到远程存储。...这个问题被要求用Git来测试你分支经验,告诉他们你以前工作中如何使用分支以及它用途是什么,你可以参考以下提到要点: 功能分支(Feature branching) 要素分支模型特定要素所有更改保留在分支内

    2.1K10

    Git入门教程分享

    基本概念解析 工作空间: 指的是你在当前设备存放代码文件工作目录 本地仓库: 指的是你在当前设备用于存放不同版本代码本地存储区,一般工作目录 .git 目录下 远程仓库: 指的是用于存放不同版本代码远程网络存储区...主流平台有(github|gitlab|私有化gitlab|私有化gitea|阿里云|腾讯云)等 分支: 指的是从一开发历史线分离出另一个开发历史线 快照(commit):指某一时段代码变更记录...举个例子:我们迭代周期(一般是两周)内计划升级用户管理和商品管理功能,开发和测试过程中产生了近百代码提交记录,最后时刻准备上线,因为某些原因放弃商品管理升级,只保留用户管理,这时候就需要把商品管理代码剔除...GIT不能对二进制文件做增量提交,导致文件副本过多而撑大仓库体积,解决方法是使用LFS GIT项目管理是独立且扁平化,权限只能分项目管理而不是目录,所不能像SVN一样每一目录都可以当作一项目来管理...GIT分支原理 GIT分支和SVN分支区别,SVN分支就是一目录,是一份代码拷贝,新分支没有过去历史记录。而GIT分支是一指向commit对象指针,差异通过元数据记录在版本中。

    44330

    再见了,SVN!GitHub 宣布淘汰 Subversion 支持

    而且,根据 GitHub 说法,每个月只有 5000 存储收到 SVN 请求,其中仅 0.02%请求通过 Subversion 端点发送。...与 Git 使用分布式模型相比,SVN 客户端 - 服务器模型显得比较老派,变更会先被存储本地,并在推送到上游代码仓库时被分发至中央历史记录(及其他分支)。...各种重要文件——特别是那些大型二进制文件——都可以进行“锁定”,防止其他开发人员我们处理同时做出变更。另外,文件、分支、标签等一切都以目录形式存在。...虽然有一条命令可以删掉分支,但它仍然会被保留历史记录中。Git 分支就更轻松易用,能在必要时直接删除。” 很明显,随着新一代版本控制系统诞生,SVN 失去了其优势地位。...而大量用户针对单个代码仓库执行提交并发需求,一定会超过文件系统访问承载上限。谷歌和 Facebook 发现,Mercurial 能够适应这类数据存储需求,但 Git 不行。

    72110

    聊聊如何从 SVN 迁移源码到 Git 仓库

    对每次提交只记录开发者用户名,而Git存储其全名和邮件地址,这意味着需要对开发者信息进行映射转换,准备authors.txt文件时,可以到团队系统数据直接查询开发者登录名、用户名和邮件地址并拼接成指定格式...authors https://svn.example.com > authors.txt 转换仓库 准备工作完成后可以开始实施转移仓库了,应该注意是,转移SVN项目时需要根据是否是标准SVN文件布局来确定命令行参数...因此,在这种情况下,可以选择找一台机器,运行命令后就不管了直到完成转换为止,或者是选择放弃保存非常老提交历史记录,这样可以加速转换过程,如果转换时只保留部分提交历史的话可以使用以下命令: git svn...这里会以一Gradle构建Java项目(IDE使用IntelliJ)为例介绍从SVN移到Git后收尾工作: 查看Git远程地址是否已经配置了,如果还没有配置,可以使用命令git remote命令配置...authors文件同时,要考虑遇到大仓库时应根据实际情况采用相对适合迁移策略,最后,应遵循团队约定,对照检查清单完成所有收尾工作。

    2.5K10

    ​2019 DevOps 必备面试题——代码版本控制篇

    版本控制系统由一中央共享存储组成,队友可以在其中提交文件更改,接下来你可以提到版本控制用途。版本控制允许你: 文件还原为以前状态。 整个项目还原为以前状态。 比较一段时间内变化。...与 SVN 等其它版本控制系统相比,它分布式架构具有许多优势,一主要优点是它不依赖于中央服务器来存储项目文件所有版本。...此问题可以有两答案,根据具体情况可以使用以下任意选项: 新提交中删除或修复错误文件,并将其推送到远程存储。这是修复错误最自然方式。... N 提交压缩到单个提交中有两种选择。...你应该首先说 Git rebase 是一命令,它将另一个分支合并到当前你正在工作分支中,并将所有位于另一分支之前本地提交,移到该当前工作分支历史记录顶部。

    2.1K50

    告别SVN,Git成“独苗”:GitHub 13 年后宣布淘汰Subversion支持

    而且,根据 GitHub 说法,每个月只有 5000 存储收到 SVN 请求,其中仅 0.02%请求通过 Subversion 端点发送。...与 Git 使用分布式模型相比,SVN 客户端 - 服务器模型显得比较老派,变更会先被存储本地,并在推送到上游代码仓库时被分发至中央历史记录(及其他分支)。...各种重要文件——特别是那些大型二进制文件——都可以进行“锁定”,防止其他开发人员我们处理同时做出变更。另外,文件、分支、标签等一切都以目录形式存在。...虽然有一条命令可以删掉分支,但它仍然会被保留历史记录中。Git 分支就更轻松易用,能在必要时直接删除。” 很明显,随着新一代版本控制系统诞生,SVN 失去了其优势地位。...而大量用户针对单个代码仓库执行提交并发需求,一定会超过文件系统访问承载上限。谷歌和 Facebook 发现,Mercurial 能够适应这类数据存储需求,但 Git 不行。

    48920

    史上最全SVN使用总结,建议先收藏后观看

    Subversion中,你可以增加(add)、删除(delete)、复制(copy)和重命名(rename),无论是文件还是目录。所有的新加文件从一、干净版本开始。...如果两程序员同时修改了同一文件呢, SVN 可以合并这两程序员改动,实际上SVN管理源代码是以行为单位,就是说两程序员只要不是修改了同一行程序,SVN都会自动合并两种修改。...移动"操作用来文件/目录从一处移动到版本另一处。 复查变化 当你检出工作副本或者更新工作副本后,你工作副本就跟版本完全同步了。...解决冲突 合并时候可能会发生冲突。Merge 操作会自动处理可以安全合并东西。其它会被当做冲突。例如,"hello.c" 文件分支上被修改,另一个分支上被删除了。这种情况就需要人为处理。...为了把 readme 存储到版本中,使用 commit -m 加上注释信息来提交。如果你忽略了 -m 选项, SVN会打开一可以输入多行文本编辑器来让你输入提交信息。

    2.4K20

    一篇文章带你了解热门版本控制系统——Git

    通俗来说的话: 版本控制用于开发过程中管理我们文件 我们可以查看文件、目录或工程等内容修改历史,方便查看更改历史记录,备份以便恢复以前版本。...,迭代后原版本项目原件保留下来 记录文件每次更新,可以对每个版本做一快照,或是记录补丁文件,如RCS。...协同开发者从服务器上同步更新或上传自己修改,如SVN 优缺点: 集中版本控制所有资料保存在一台电脑上,相当于单机存储,保密性较高;但一旦计算机出现损坏,项目备份丢失,无法找回 分布式版本控制 概念...Git文件指令 Git提供了两方法可以查看单个文件以及所有文件状态: # 查看指定文件状态 git status [filename] # 查看所有文件状态 git status 同时Git也提供了两方法进行文件类型转换...版本控制系统都以某种形式支持分支,一分支代表一条独立开发线,让我们不影响主线同时继续工作 如果同一文件合并分支时都被修改了则会引起冲突: 解决办法是我们可以修改冲突文件后重新提交 但是我们需要选择要保存某一人代码而舍弃另一个代码

    60810

    eclipse如何使用svn_pr入门教程

    Subversion 是文件数据信息保存到版本中进行管理, 为了满足用户不同需求, Subversion 允许用户对版本目录进行定制。...②非中文无空格目录下创建一文件夹,作为版本根目录。...例如:D:\fourthsoftware\SVN-responsitory ③版本根目录下创建与具体项目对应子目录——这样做目的是使一SVN 服务器能够同时管理多个项目,而不是为每一项目搭建一...SVN 1、Eclipse中安装SVN插件 其实就是把插件复制到dropins目录下,当然也可以在线安装 (我这里sts其实和Eclipse差不多) 2、启动Eclipse,查看是否安装成功...如果是远程需要改成具体ip Test 是SVN服务器上 认证失败原因 打开svnserve.conf这个文件 # anon-access = read 匿名访问 我们#

    65730

    SVN与Gi较量对比

    SVN可以随着时间推移来管理各种数据,这些数据被放置SVN管理中央仓库(所有的代码集合)里面。同时SVN会备份并记录每个文件每一次修改更新变动。...这样就开发者就可以回归到任何一时间点某一版本(对于SVN,没修改一次文件SVN就会创建一叫做版本概念,是从0 开始自增序列)。...当然也可以指定文件更新历史记录(index.php)。 SVN又叫做集中式版本控制器。严重依赖服务器端,当服务器端无法使用时候,版本控制也就无法再使用了。 svn工作流程图 ?...SVN与GIT区别: 1.GIT是分布式,而SVN是集中式 2.GIT把内容按元数据方式存储,而SVN是按文件:因为git目录是处于个人机器上克隆版版本,它拥有中心版本上所有的东西,例如标签...3.GIT分支和SVN分支不同:svn会发生分支遗漏情况,而git可以同一工作目录下快速几个分支间切换,很容易发现未被合并分支,简单而快捷合并这些文件

    94620

    给Dreamweaver插上Svn翅膀

    可以Dreamweaver与svn建立连接了。 其实你很细心的话,你会发现在创建站点时候,左侧那栏第三选项,有一“版本控制”。不错,那里就是设置连接地方。...我这里用是局域网内IP:10.80.98.1。     存储路径”文本框中,输入 SVN 服务器上存储路径。...输入 SVN 服务器用户名和密码。 ?  与服务器建立连接后,可在“文件”面板中查看 SVN 存储。若要查看 SVN 存储可以展开文件”面板中,单击“存储文件”按钮 。 ?...这个功能主要是为了防止多个用户同时修改同一文件,提交后会导致冲突问题。存储中锁定文件时,该文件上将显示一开锁图标。其他用户会看到完全锁定图标。解锁是类似的操作,不再多做演示。...此时,您可以存储中获取该文件最新版本,手动更改工作副本,然后文件标记为已解析,这样就可以提交了。 右键单击要解析文件,然后选择“版本控制”>“标记为已解析”。

    73820

    给Dreamweaver插上Svn翅膀

    可以Dreamweaver与svn建立连接了。 其实你很细心的话,你会发现在创建站点时候,左侧那栏第三选项,有一“版本控制”。不错,那里就是设置连接地方。...我这里用是局域网内IP:10.80.98.1。     存储路径”文本框中,输入 SVN 服务器上存储路径。...输入 SVN 服务器用户名和密码。 ?  与服务器建立连接后,可在“文件”面板中查看 SVN 存储。若要查看 SVN 存储可以展开文件”面板中,单击“存储文件”按钮 。...这个功能主要是为了防止多个用户同时修改同一文件,提交后会导致冲突问题。存储中锁定文件时,该文件上将显示一开锁图标。其他用户会看到完全锁定图标。解锁是类似的操作,不再多做演示。...此时,您可以存储中获取该文件最新版本,手动更改工作副本,然后文件标记为已解析,这样就可以提交了。 右键单击要解析文件,然后选择“版本控制”>“标记为已解析”。

    1K100

    TortoiseSVN每个菜单项都表示什么意思

    不过由于它只是一客户端,所以它不能对版本进行权限管理。 TortoiseSVN不是一独立窗口程序,而是集成windows右键菜单中,使用起来比较方便。...例如,有些文件原来是版本控制,但是你没有通过tortoiseSVN就直接删除了,但是tortoiseSVN还是保留着原来信息(每个文件夹下都有一.svn隐藏文件夹,存放着当前文件夹下所有文件版本信息...将来可以方便找到某个特定版本(当然我们也可以使用版本号来查找,但是数字毕竟不方便) SVN对于分支和标签都是采用类似Linux下硬链接方式(同一文件可以存在两地方,删除一不会影响另一个,所做修改会影响另一个...),来管理文件,而不是简单复制一份文件拷贝,所以不会有浪费存储空间问题存在。...例如我原先版本是建在U盘上,现在转移到(复制整个配置文件夹)开发服务器上,使用https代替文件系统访问。因此就需要将原来工作拷贝目标版本重新定位到开发服务器上。

    1.1K30

    【10】进大厂必须掌握面试题-版本控制面试

    版本控制系统由一中央共享存储组成,同事可以在其中对文件文件集进行更改。然后,您可以提及版本控制用途。 版本控制可让您: 文件还原到以前状态。 整个项目还原到以前状态。...像Git这样分布式VCS允许所有团队成员拥有完整项目历史记录,因此,如果中央服务器出现故障,则可以使用任何队友本地Git存储。 Q3。团队中分支是怎么用。...您可以仅提到您曾经使用过VCS工具:“我从事过Git,与SVN等其他VCS工具相比,它具有一主要优势是它是一分布式版本控制系统。” 分布式VCS工具不一定依赖中央服务器来存储项目文件所有版本。...这个问题可能有两答案,因此请确保同时包括这两原因,因为根据情况,可以使用以下任一选项: 提交中删除或修复错误文件,然后将其推送到远程存储。这是修复错误最自然方法。...据我说,您应该首先说git rebase是一命令,它将把另一个分支合并到您当前正在工作分支中,然后所有rebased分支之前本地提交移动到该历史顶部科。

    2.6K20

    【10】进大厂必须掌握面试题-版本控制面试

    版本控制系统由一中央共享存储组成,同事可以在其中对文件文件集进行更改。然后,您可以提及版本控制用途。 版本控制可让您: 文件还原到以前状态。 整个项目还原到以前状态。...您可以仅提到您曾经使用过VCS工具:“我从事过Git,与SVN等其他VCS工具相比,它具有一主要优势是它是一分布式版本控制系统。” 分布式VCS工具不一定依赖中央服务器来存储项目文件所有版本。...它分布式体系结构提供了优于其他版本控制系统(VCS)优势,例如SVN,其中一主要优点是它不依赖中央服务器来存储项目文件所有版本。...Git中,如何还原已经被推送并公开提交? 这个问题可能有两答案,因此请确保同时包括这两原因,因为根据情况,可以使用以下任一选项: 提交中删除或修复错误文件,然后将其推送到远程存储。...据我说,您应该首先说git rebase是一命令,它将把另一个分支合并到您当前正在工作分支中,然后所有rebased分支之前本地提交移动到该历史顶部科。

    2.6K30
    领券