Android Studio SVN 1.8此客户端太旧,无法使用工作副本

时间:2015-02-05 08:48:14

标签: android svn android-studio gradle android-gradle

希望有人能帮忙解决这个问题......

我下载了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工作室中使缓存失效,看看是否有帮助,但仍然没有运气。

5 个答案:

答案 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日更新

我分享截图:Path in Android Studio

答案 2 :(得分:0)

  1. 尝试更新SVN版本 - 下载最新版本的SVN并进行安装。在Options中,将SVN路径设置为此新版本的bin目录(或svn可执行文件所在的位置)。这应该可以解决这个问题。

  2. 如果未解决,请参阅"事件日志"或"终端窗口"。你会看到类似" svn版本不匹配" - 现在就修。点击立即修复。这将解决问题,或者它将打开左侧面板,其中包含升级项目设置的链接。

答案 3 :(得分:0)

让AndroidStudio使用它的内部SVN客户端。

对我来说,当我安装了新版本的svn客户端(TortoiseSVN)时,这种情况(在Windows上)发生了。

如果您不想将工作副本更新到更新版本,则必须让AndroidStudio使用它的内部SVN客户端,这可以在文件>中完成。设置>版本控制>通过取消选中“使用命令行客户端”选项的复选框来进行Subversion

答案 4 :(得分:0)

要更改本地工作副本的格式,请执行以下操作:

通过执行以下操作之一打开版本控制工具窗口: 在主菜单上,选择查看|工具窗口|版本控制。 按 Alt + 9 。 切换到“ Subversion工作副本信息”选项卡。 仅当当前项目源完全或部分受Subversion控制时,此选项卡才可用。

滚动到所需目录上的信息,然后单击“更改”链接。 请注意,Subversion 1.9可以与本地工作副本版本1.8一起使用,因此在这种情况下,“更改”链接将不会出现。

在打开的转换工作副本格式对话框中,选择所需的格式选项。