SmartGit/HG 是一款开放源代码的、跨平台的、支持 Git 和 Mercurial 的 SVN 图形客户端,可运行在Windows、Linux 和 MAC OS X 系统上。

1.安装

Ubuntu及衍生系统用户安装,打开终端,使用以下命令:


sudo add-apt-repository ppa:eugenesan/ppa sudo apt-get update sudo apt-get install smartgithg

卸载命令:


sudo apt-get remove smartgithg
2.配置

readme-linux.txt中有段设置


SmartGit where it can find your Java Runtime Environment. Create the file ~/.smartgit/smartgit.vmoptions and add following line (change the path) jre=/path/to/your/jre If you have further questions regarding the SmartGit on Linux, please ask in our SmartGit mailing list:

java安装正常的


$ java -version openjdk version "9-internal" OpenJDK Runtime Environment (build 9-internal+0-2016-04-14-195246.buildd.src) OpenJDK 64-Bit Server VM (build 9-internal+0-2016-04-14-195246.buildd.src, mixed mode)

定位java环境位置是在/usr/lib/jvm/java-9-openjdk-amd64

创建~/.smartgit/smartgit.vmoptions文件,内容:


jre=/usr/lib/jvm/java-9-openjdk-amd64
3.错误1

配置成后出现以下错误:


$ smartgit intx MaxJavaStackTraceDepth=-1 is outside the allowed range [ 0 ... 1073741823 ] Improperly specified VM option 'MaxJavaStackTraceDepth=-1' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.

这是smartgit版本小bug引起的。

解决:修改文件/usr/share/smartgit/bin/smartgit.sh

_MISC_OPTS="-Xverify:none -XX:MaxJavaStackTraceDepth=-1 -Dsun.io.useCanonCaches=false"

替换为

_MISC_OPTS="-Xverify:none -XX:MaxJavaStackTraceDepth=1000000 -Dsun.io.useCanonCaches=false"

4.错误2

修改完后运行再次报错


$ smartgit Unsupported system classloader jdk.internal.loader.ClassLoaders$AppClassLoader@d7b1517

问题貌似是java9暂不支持smartgit,把java-9-openjdk-amd64卸载,重新装/java-8-openjdk-amd64。同时更新~/.smartgit/smartgit.vmoptions配置文件。

运行成功!

5.创建smartgit桌面启动

~/Desktop/创建文件smartgit.desktop,内容为:


[Desktop Entry] Name=SmartGit Comment=Git client Keywords=Git;Subversion; StartupNotify=true Terminal=false Type=Application Categories=Application; Icon=/usr/local/bin/smartgit/bin/smartgit-48.png Exec=/usr/local/bin/smartgit/bin/smartgit.sh %F

赋予smartgit.desktop可执行属性:

$ chmod a+x smartgit.desktop


REF:

1.Smartgit install error on Ubuntu [closed]

ubuntu 16.04安装smatrgitHG工具的更多相关文章

  1. Ubuntu 16.04安装UML工具StarUML 2

    StarUML 2是一个商业软件,但是没有时间限制,就像Sublime Text 3一样.而且具有跨平台,支持Mac.Windows. 这个软件曾经08年的时候在老D的博客上有推荐过,参考:http: ...

  2. Ubuntu 16.04安装SoapUI工具进行接口测试(Web Service/WSDL/RESTfull)

    SoapUI是一个跨平台接口测试工具,官方提供开源版本和商业版本.可以用来测试WSDL/RESTfull等接口. 替代的工具有JMeter. 一般用于WSDL的接口测试比较多,基于XML的形式,且这类 ...

  3. Ubuntu 16.04 安装 VMware Tools(解决windows和Ubuntu之间不能互相复制粘贴文件的问题)

    Ubuntu 16.04安装虚拟工具VMware Tools,指的是在虚拟机VMWare安装Ubuntu 16.04后再安装VMware Tools的过程.很多人接触Linux都是从虚拟机开始,而安装 ...

  4. Ubuntu 16.04安装Matlab 2016b教程

    由于代码需要依赖Linux环境,只好尝试着装MATLAB,然而各种问题接踵而至,开始了由MATLAB引发的三天Linux探寻之旅-- 下载Matlab 2016b for Linux https:// ...

  5. Ubuntu 16.04安装sogou 拼音输入法

    一.更换为国内的软件源 安装搜狗输入法之前请先更换为国内的软件源,否则无法解决依赖问题.首先,用以下命令打开源列表: sudo gedit /etc/apt/sources.list #用文本编辑器打 ...

  6. Ubuntu 16.04安装cuda7.5 GCC

    http://www.linuxidc.com/Linux/2017-01/139320.htm 在介绍Ubuntu 16.04安装 CUDA7.5开始前,先辨析几个概念GPU.NVIDIA.NVID ...

  7. ubuntu 16.04 安装opencv 2.4.13

    ubuntu 16.04 安装opencv 2.4.13 https://blog.csdn.net/u011557212/article/details/54706966?utm_source=it ...

  8. Ubuntu 16.04 安装 RabbitMQ

    Ubuntu 16.04 安装 RabbitMQ(注意,服务器安全组需要添加15672 和5672端口) #1 更新 $ sudo apt-get update$ sudo apt-get upgra ...

  9. Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法)

    Ubuntu 16.04 安装opencv的各种方法(含opencv contrib扩展包安装方法) https://blog.csdn.net/ksws0292756/article/details ...

随机推荐

  1. android官方技术文档翻译——设计时布局属性

    本文译自androd官方技术文档<Designtime Layout Attributes>:http://tools.android.com/tips/layout-designtime ...

  2. Django介绍、安装配置、基本使用、Django用户注册例子

    Django介绍     Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站     DjangoMTV的思想         没有controller ...

  3. JSP连接access数据库

    一个用jsp连接Access数据库的代码. 要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数 ...

  4. 内连接、左外连接、右外连接、全外连接、交叉连接(CROSS JOIN)-----小知识解决大数据攻略

    早就听说了内连接与外连接,以前视图中使用过.这次自考也学习了,只是简单理解,现在深入探究学习(由于上篇博客的出现)与实践: 概念 关键字: 左右连接 数据表的连接有: 1.内连接(自然连接): 只有两 ...

  5. Smarty学习笔记(一)

    1.Smarty的配置: 将lib的内容复制到自己的工程,然后引入 实例化和配置Smarty基本属性: $smarty = new Smarty(); $smarty->left_delimit ...

  6. iOSAPP启动效果复杂动画之抽丝剥茧

    一.前言 随着开发者的增多和时间的累积,AppStore已经有非常多的应用了,每年都有很多新的APP产生.但是我们手机上留存的应用有限,所以如何吸引用户,成为产品设计的一项重要内容.其中炫酷的动画效果 ...

  7. mongodb系列之--mongodb 主从配置与说明

    一.为什么要配置mongodb的主从: 1.做主从,可以说是做数据的备份,有利于故障的恢复 2.做主从,可以做到读写分离,主节点负责写操作,从节点负责读操作,这样就把读写压力分开,保证系统的稳定性. ...

  8. 网站开发进阶(二十二)HTML UI知识汇总(更新中...)

    HTML知识汇总(更新中...) 1.<iframe> 标签 浏览器支持 所有浏览器都支持 <iframe> 标签. 定义和用法 iframe 元素会创建包含另外一个文档的内联 ...

  9. sql的having深入理解;group by只返回一组的一行,compute更好

    Having where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行. having 子句的作用是 ...

  10. Spring--ApplicationContext

    //中心接口,给应用提供配置信息 public interface ApplicationContext extends EnvironmentCapable, ListableBeanFactory ...