希望有人能帮忙解决这个问题......
我下载了SmartSVN并在其中打开了一个工作副本(Android项目)。它要求我将工作副本升级到1.8。
这使我在使用svn客户端时没有任何问题。但是我确实需要升级我的命令行svn客户端(运行OSX Yosemite)。
现在当我在命令行输入svn --version时,它指向版本1.8 ... Bonus!
然而,在Android Studio中,当我运行assembleProductionRelease时,我有一个运行svn info和extras版本号的阶段。
这是代码
def getSvnRevision() {
new ByteArrayOutputStream().withStream { os ->
def result = exec {
executable = 'svn'
args = ['info']
standardOutput = os
}
def outputAsString = os.toString()
def matchLastChangedRev = outputAsString =~ /Last Changed Rev: (\d+)/
return "${matchLastChangedRev[0][1]}"
}
}
这不再运行并报告;
svn:E155021:此客户端太旧,无法使用xxx的工作副本
EDIT 我还修改了首选项中的路径 - >版本控制 - > Subversion被称为“使用命令行客户端”,指向正确路径中的svn文件。
我还在Android工作室中使缓存失效,看看是否有帮助,但仍然没有运气。
答案 0 :(得分:13)
经过数小时的搜索后,我终于找到了适用于Mac OsX的解决方案(我已经获得了Yosemite,但我认为其他版本的OSx也是如此)。
在此链接中对此进行了解释:http://andowebsit.es/blog/noteslog.com/post/how-to-upgrade-subversion-on-osx/
修改:此处是链接过期的解决方案
首先,您必须确保使用 svn --version 安装的SVN Client版本为1.8。结果应与此类似:
svn --version
上
svn,版本1.8.13(r1667537)
编辑于2015年6月5日,19:21:21在x86_64-apple-darwin14.3.0
如果您的svn版本不是1.8,请使用 brew 安装新版本的subversion。
然后,为了获得svn可执行文件的正确路径,您必须使用哪个命令:
其中-a svn
在/ usr / bin中/ SVN
的/ usr / local / bin中/ SVN
最后转到Android Studio 偏好设置 - > 版本控制 - > Subversion 并将 / usr / local / bin / svn 字符串放在使用命令行客户端选项中。
答案 1 :(得分:8)
Mac中有Android Studio的默认SVN,位于/usr/bin/svn
。到目前为止,它仍然是版本1.7
,但大多数SVN客户端(例如SmartSVN)使用位于1.8
的{{1}}。
要修复Android Studio,您可以更改/usr/local/bin/svn
并设置路径Preferences -> Version Control -> Subversion
。
要确保命令行选择了哪个SVN,只需键入/usr/local/bin/svn
,它将显示指向which svn
命令的完整路径。你应该改到那里。
希望得到这个帮助。
2016年4月19日更新
答案 2 :(得分:0)
尝试更新SVN版本 - 下载最新版本的SVN并进行安装。在Options中,将SVN路径设置为此新版本的bin目录(或svn可执行文件所在的位置)。这应该可以解决这个问题。
如果未解决,请参阅"事件日志"或"终端窗口"。你会看到类似" svn版本不匹配" - 现在就修。点击立即修复。这将解决问题,或者它将打开左侧面板,其中包含升级项目设置的链接。
答案 3 :(得分:0)
让AndroidStudio使用它的内部SVN客户端。
对我来说,当我安装了新版本的svn客户端(TortoiseSVN)时,这种情况(在Windows上)发生了。
如果您不想将工作副本更新到更新版本,则必须让AndroidStudio使用它的内部SVN客户端,这可以在文件>中完成。设置>版本控制>通过取消选中“使用命令行客户端”选项的复选框来进行Subversion 。
答案 4 :(得分:0)
要更改本地工作副本的格式,请执行以下操作:
通过执行以下操作之一打开版本控制工具窗口: 在主菜单上,选择查看|工具窗口|版本控制。 按 Alt + 9 。 切换到“ Subversion工作副本信息”选项卡。 仅当当前项目源完全或部分受Subversion控制时,此选项卡才可用。
滚动到所需目录上的信息,然后单击“更改”链接。 请注意,Subversion 1.9可以与本地工作副本版本1.8一起使用,因此在这种情况下,“更改”链接将不会出现。
在打开的转换工作副本格式对话框中,选择所需的格式选项。