ArchLinux中,将Git整体打包为Git软件包,估计是包维护人员打包失误,有两个问题没弄好。本文将说明如何解决这两个问题,顺带介绍如何将SVN仓库导入Git仓库。

<li>忘记将/usr/lib/git-core/添加到PATH变量了。

该路径下有不少的工具以及链接,如果缺失,将导致好多git-*这类命令都找不到,虽然大多数可以用git *,但是还是不够方便。而且尤其对于刚了解Git的人,很多从网上找到的文章都是用这些链接作为例子中的命令引用的。

<li>缺失依赖关系tk。

Git自带了一个简单的,但是功能足够用的GUI界面,但是该界面依赖于TK,包维护者仍然没有注意到这个问题。使得用户在使用图形界面git-gui(/usr/lib/git-core/git-tui)时,会提示如下错误:

以上两个问题解决起来还是很容易的,对于第一个问题,解决方法有两种:

<li>修改PATH变量:打开/etc/bash.bashrc或者~/.bashrc,或者别的登录之前会执行的脚本文件,在文件末尾添加如下内容:
  • 通过/usr/lib/git-core/git-*来运行对应指令。

第二个问题就更简单了,直接安装tk即可,如果自己是包维护者或者自建仓库的,在git的PKGBUILD里depend段添加上tk即可。

另外,原来Git自身是可以直接导入SVN仓库的,并且可以将对应的版本历史及其日志导入,唯一的缺点是导入的数据都在一个分支里面。导入方法如下: