正则表达式 – git过滤器分支致命修订版

我正在尝试从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”使用doc中的命令
git filter-branch -f –msg-filter’sed’s / ^ git -tfs-id:.* $// g“’ – –all

我一直在尝试使用正则表达式,它没有解决问题.在网上挖了很多东西后,我仍然无法理解为什么它不能正常工作.
我正在使用git for windows命令行(最新版本),我对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虚拟bash的引用解释之间存在兼容性问题.

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

点赞