regex - git 过滤器分支致命修订

标签 regex git azure-devops commit git-tfs

我正在尝试从 TFVC(Visual Studio Team Services)迁移到 git(通过 Visual Studio Team Services 托管)。我已经能够构建一个脚本来迁移所有的东西、分支、做一些清理等。 我使用了 git tfs ( https://github.com/git-tfs/git-tfs/blob/master/doc/usecases/migrate_tfs_to_git.md ) 和一些在线博客文章。

一切都像一个魅力,除了当我尝试清理提交消息时,我使用文档中的命令得到“致命:错误修订 s/^git-tfs-id:.*$//g” git filter-branch -f --msg-filter 'sed "s/^git-tfs-id:.*$//g"' -- --all

我一直在尝试使用正则表达式,但它并没有解决问题。在网上搜索了很多之后,我仍然不明白为什么它不能正常工作。 我在 Windows 命令行(最新版本)中使用 git,我对 git 的了解非常基础,但我找不到任何替代方法来实现我想做的事情。

感谢您的帮助!

最佳答案

终于找到了真正的问题所在...报价问题 git filter-branch -f --msg-filter 'sed "s/git-tfs-id:.*//gm"' -- --all
不起作用 git filter-branch -f --msg-filter "sed 's/git-tfs-id:.*//gm'"-- --all 作品

我猜windows命令行引号的解释和Git virtual bash之间存在兼容性问题。

无论如何感谢@Giuseppe Ricupero 的帮助!

关于regex - git 过滤器分支致命修订,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34680353/

相关文章:

typescript - 如何使用自定义 Azure Devops 扩展 index.ts 中的连接服务?

javascript - 用空 javascript 替换 <xml> 标签数据

regex - Tcl 正则表达式

git - 如何通过 shell 命令行向组授予对 Bitbucket 存储库的写访问权限

git - 在 Go 语言中编写可靠的数据存储

git - 适用于 Windows 的 PhpStorm 和 Github

azure-devops - 由于提供的客户端 key 无效,Azure cli 无法连接

azure - 是否可以将构建工件从管道复制到存储库中

java - 正则表达式不会从字符串中删除字符

java - 正则表达式 java 中的 4 个条件中的 3 个