【发布时间】:2012-05-30 18:13:31
【问题描述】:
我有一个 git 存储库,其中包含大约 30 个修订版,我想将其导入现有的 SVN 存储库。不幸的是,SVN 存储库有一堆预提交挂钩,需要提交消息中的某些信息、某些文件类型中的某些 SVN 关键字等等。这些都与我正在检查的内容无关,或者无论如何,它们不如保留现有的修订历史重要。
在一个完美的世界里,我也许可以这样做:
- 劫持第一个 git 修订版(以及任何其他引入新文件的修订版),使其包含必要的 SVN 关键字并设置相应的 svn:keywords 属性
- 批量编辑所有 30 条 git 提交消息以添加所需的提交消息字符串
在一个不太完美的世界里,我可以让 git-svn 以某种方式预先添加 skip-pre-commit-checks(?——我以前从未使用过它),然后我至少会有所有的修订里面有历史。
想法?
更新添加: skip-pre-commit-checks 实际上不是一个东西;我被特定项目中的特定黑客行为误导了。
【问题讨论】:
-
你可以编辑你的提交信息,见stackoverflow.com/questions/179123/…
-
有没有办法以非交互方式做到这一点?我不想手动编辑 30 条提交消息。不必手动识别 30 次提交也很好,尽管我想我可以通过足够的脚本来解决这个问题。
-
是否可以暂时挂起 SVN 中的 pre-commit 钩子?