我昨天没有问题,但今天我不能再跑git svn了。它说:
git: 'svn' is not a git command. See 'git --help'.
The most similar commands are
fsck
mv
show
Run Code Online (Sandbox Code Playgroud)
我不知道它是否相关,但从昨天开始我更新了npm(6.14.4) 和node(v12.6.0)。
我在 macOS Catalina
我macOS Big Sur v11.1 (20C69)在GitHub 上找到了一个简单的固定解决方案。
确保使用 brew 安装 git、svn、perl。
brew install git
brew install perl
brew install subversion
Run Code Online (Sandbox Code Playgroud)
编辑/usr/local/Cellar/git/2.30.0/libexec/git-core/git-svn。
替换#!/usr/bin/perl为#!/usr/local/bin/perl
git svn 作品。
上述解决方案仅适用于 perl 5.32.0。
当我将 perl 更新到 5.32.1 时,git svn无法再工作。
无法在@INC 中找到 SVN/Core.pm(您可能需要安装 SVN::Core 模块)...
我在GitHub 上找到了解决方案。
现在subversion是用system perl构建的,所以我们可以添加一个环境变量来解决这个问题:
Run Code Online (Sandbox Code Playgroud)export PERL5LIB=/usr/local/lib/perl5/site_perl/#{perl_version}/darwin-thread-multi-2level您应该替换
#{perl_version}为系统 perl 的版本。对于 macOS Big Sur:
Run Code Online (Sandbox Code Playgroud)export PERL5LIB=/usr/local/lib/perl5/site_perl/5.28.2/darwin-thread-multi-2level
更新:2020 年 9 月
似乎结局到了。遵循原始建议将永远删除颠覆。我找到了适用于 MacOS的经过验证的 Subversion 版本并下载并安装了它。然后我需要将 Subversion 添加到$PATH变量中以取代 Apple 的svn(它只打印一条消息说不再包含 subversion)。要添加它,请将此行添加到您的~/.zprofile:
export PATH=/opt/subversion/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
这将修复svn。我仍然没有想出如何修复git svn。
注意:我也知道可以从 获得颠覆homebrew,但homebrew我公司的政策禁止这样做。如果homebrew对某人更有效,请在此处发布您的结果。
原始答案:2020 年 3 月
今天同样的事情发生在我身上。软件更新后,git svn并svn都不见了。Apple似乎正在弃用 XCode 中的 Subversion:
Xcode 不再提供对 Subversion 的命令行工具支持——包括 svn、git-svn 和相关命令。如果您需要 Subversion 或相关的命令行工具,请通过运行 xcode-select --install 来安装命令行工具包。(50266910)
同时,我能够通过删除 XCode 命令行工具并重新安装它们来解决这种情况:
sudo rm -Rf /Library/Developer/CommandLineTools
sudo xcode-select --install
Run Code Online (Sandbox Code Playgroud)
在那之后,git svn又svn回来了。希望这能让我们在最终弃用和删除之前暂停执行。
| 归档时间: |
|
| 查看次数: |
5422 次 |
| 最近记录: |