Martnn 2016-10-09
前几天mac升级了最新版的macOS Sierra 10.12。今天Idea下svn commit代码,提交失败。转而去命令行提交,命令相应如下:
svn commit
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
一脸懵逼,mac默认是装了svn命令行工具的。好吧,我自己手工装svn。需要在Apple Developer网站下载一个120MB的Command Line Tools(macOS 10.12)独立安装包。https://developer.apple.com/download/more/
把这个包下下来,安装好后,svn就可以用了。
svn --version
svn, version 1.9.4 (r1740329)
compiled Sep 16 2016, 13:16:29 on x86_64-apple-darwin15.0.0
svn安装成功,但是事情并没有因此结束。新安装的svn版本要高于升级mac os前的svn版本。commit后会报错。
lvsheng$ svn commit
svn: E155036: Please see the 'svn upgrade' command
svn: E155036: The working copy at '/work/svn/payway-c2c/branches/20160829_814756_presell_1'
is too old (format 29) to work with client version '1.9.4 (r1740329)' (expects format 31). You need to upgrade the working copy first.
两种方式解决这种问题
1. 按提示说的svn upgrade一下,但是个人不推荐这种方式。upgrade后,commit并不会返回任何相应数据,虽然提交成功。而且idea下依旧无法提交成功。
2. 重新checkout代码库,手工把修改的代码考到新的代码库。然后commit,这次commit是有提示信息的。重新导入idea后,可以用idea提交成功。
macOS Sierra没出来几天我就更新了,当了一回小白鼠。以后还是等版本稳定了再更新系统吧。
Subversion (SVN) 的详细介绍:请点这里
Subversion (SVN) 的下载地址:请点这里
pub_svnserve.conf的 pub_authz.conf的配置文件有非法字符的原因引起,需要查找pub_authz.conf提的非法内容比如多余的空格删除或直接将pub_authz.conf