Topgit 安装

鉴客 发布于 2011/05/10 10:17
阅读 1K+
收藏 1

Topgit 用 shell 脚本语言开发,可以安装在所有类Unix环境中,例如 Linux、Mac OS X[1] ,以及Windows下的Cygwin、msysGit等。下面的官方网站链接介绍了Topgit的安装和使用方法:

  • http://repo.or.cz/w/topgit.git?a=blob;f=README 。

1. Linux下安装Topgit

安装官方的 Topgit 版本,直接克隆官方的版本库,执行 make 即可:

$ git clone git://repo.or.cz/topgit.git
$ cd topgit
$ make
$ make install

默认会把可执行文件 tg 安装在 $HOME/bin (用户主目录下的 bin 目录)下,如果没有将 ~/bin 加入环境变量 $PATH 中,可能无法执行 tg。
如果具有 root 权限,也可以在编译和安装时向make命令传递prefix环境变量,将 tg 安装在系统目录中。

$ make prefix=/usr
$ sudo make prefix=/usr install

我对 Topgit 做了一些增强和改进,在后面的章节将予以介绍。如果想安装改进的版本,需要预先安装 quilt 补丁管理工具,然后进行如下操作。

$ git clone git://github.com/ossxp-com/topgit.git
$ cd topgit
$ QUILT_PATCHES=debian/patches quilt push -a
$ make prefix=/usr
$ sudo make prefix=/usr install

如果用的是 Ubuntu 或 Debian Linux 操作系统,还可以这么安装。
(1) 先安装 Debian/Ubuntu 打包依赖的相关工具软件。

$ sudo aptitude install quilt debhelper \
build-essential fakeroot dpkg-dev

(2) 再调用 dpkg-buildpackage 命令,编译出 DEB 包,再安装。

$ git clone git://github.com/ossxp-com/topgit.git
$ cd topgit
$ dpkg-buildpackage -b -rfakeroot
$ sudo dpkg -i ../topgit_*.deb

(3) 安装完毕后,重新加载命令行补齐,可以更方便地使用 tg 命令。

$ . /etc/bash_completion

2. Mac OS X 下安装Topgit

在Mac OS X下安装官方版本的Topgit,在使用中会遇到问题。这是因为Mac OS X下部分shell命令的行为和相应的GNU命令的行为不一致,例如echo、paste和sed命令等。
在Mac OS X下可以使用Homebrew安装所需的GNU工具。如下:

$ brew install gnu-sed
$ brew install coreutils
$ brew install quilt

然后别忘了安装改造后的Topgit。

$ git clone git://github.com/ossxp-com/topgit.git
$ cd topgit
$ QUILT_PATCHES=debian/patches quilt push -a
$ make prefix=/usr
$ sudo make prefix=/usr install

3. Windows下安装Topgit

Windows下的msysGit因为缺乏Topgit依赖的命令行工具,因此很难在msysGit下运行Topgit。

Windows下的msysGit因为缺乏Topgit依赖的命令行工具(如:fgrep, install, make, mkfifo, mktemp, tsort 等),安装和运行Topgit会遇到困难。从安装好的 MSYS[2] 或 MSYS-CN[3]中可以提取所需软件到 msysGit 环境,实现Topgit在msysGit中的安装和运行。

Windows下的Cygwin拥有一个完整的POSIX环境,当安装了所需的工具(quilt 、make等)后,就可以正常的编译和使用Topgit。但是如果克隆的Topgit版本库的工作区文件的换行符是DOS格式换行符(CRLF),在安装过程中会遇到麻烦。从下面地址克隆的Topgit版本库,因为工作区根目录下存在一个.gitattributes[4] 文件,可以保证检出的工作区文件采用Unix格式的换行符(LF)。具体的安装方法同前。


[1] MsysGit的shell环境因缺乏Topgit需要用到的部分命令和编译工具不能安装和运行Topgit。

 

[1] Mac OS X及BSD中安装的sed命令和Topgit不兼容,需要安装 GNU sed,并使用改造后的Topgit。

[2] http://www.mingw.org/wiki/msys

[3] http://code.google.com/p/msys-cn/

加载中
0
ddatsh
ddatsh

CYGWIN也好,MSYS也好,最重要的就是 make prefix 路径的设置

比如在MSYS-CN下 解压后 进TOPGIT目录

make prefix=/d/tg

然后依然会生成

msys/home/用户名/bin/tg

msys/home/用户名/libexec

msys/home/用户名/shared

 

make install 生成的 东西,拷到 指定的 prefix 目录下

然后 再把 msys/bin 里的东西,全部拷贝,至 msysgit/bin ,可以忽略已存在文件

 

 

在UBUNTU 下用GIT和GIT FLOW,TOPGIT 速度那是相当的快

 

而如果在WIN下CYGWIN用 是相当的痛苦的 明显的延迟

返回顶部
顶部