版本库转换:hg-git-svn-git.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
版本库转换:hg-git-svn-git

版本库转换:hg-git-svn-git 有一些在客户现场定制的软件,要把这些零散的工具软件合并到一个 Git库中—— utils 库。如: 一个名为 ldap_import 的工具,是在客户现场完成的,使用 hg 做版本控制,包含16次提交。 目录结构为: ~/test/ldap_import-hg$ ls -aF ./ ../ .hg/ .hgignore Makefile sendmail.py* test/ test.py* to_ldif.py* 需要导入到一个git库下,但是代码要放在一个目录 ldap_import 下,而不是版本库的根目录。 整个转换过程涉及到使用 fast-export 完成 hg 到 git 的转换;使用git-svn 实现git库向svn的转换;使用 svnadmin dump/load, svndumpfilter 对版本库目录结构进行整理,最后使用git-svn将版本库转换为 git,在合并到统一的 utils Git库中。 Hg版本库迁移到Git版本库 使用 fast-export 可以很容易的实现 Hg 版本库迁移为Git版本库。 fast-export 工具可以从?http://repo.or.cz/w/fast-export.git?获取到。 转换过程: ~/test/ldap_import-hg$ hg tip 修改集: 15:81f8055fafc0 标签: tip 用户: Jiang Xin AT gmail DOT com 日期: Thu Oct 22 16:31:03 2009 +0800 摘要: to address is a list; and strip header works if not blank line. ~/test/ldap_import-hg$ mkdir ../ldap_import-git ~/test/ldap_import-hg$ cd ../ldap_import-git ~/test/ldap_import-git$ git init Initialized empty Git repository in /home/jiangxin/test/ldap_import-git/.git/ ~/test/ldap_import-git$ /path-to/hg-fast-export.sh -r ../ldap_import-hg master: Exporting full revision 1/16 with 1/0/0 added/changed/removed files ... ~/test/ldap_import-git$ git reset HEAD Unstaged changes after reset: ... ~/test/ldap_import-git$ git co . Git版本库转换为Subversion版本库 先创建一个空的Subversion版本库,并初始化一个空目录 trunk ~/test/ldap_import-git$ svnadmin create ../ldap_import-svn ~/test/ldap_import-git$ svn mkdir -m create blank /trunk directory. file:///home/jiangxin/test/ldap_import-svn/trunk 提交后的版本为 1。 使用 git-svn 将 svn 版本库同步到git版本库中,建立svn库和git库的关联: ~/test/ldap_import-git$ git svn init -s file:///home/jiangxin/test/ldap_import-svn ~/test/ldap_import-git$ git svn fetch r1 = 3370bbdb09c6d745feb3841eebae9870693fa942 (refs/remotes/trunk) ~/test/ldap_import-git$ git br -r trunk ~/test/ldap_import-git$ git co -b trunk remotes/trunk Switched to a new branch trunk ~/test/ldap_import-git$ git br master * trunk ~/test/ldap_import-git$ git log master commit 8589f68b3e62ce3bcbc51e36cb7c60

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档