有一种简单的方法来管理多个版本的git吗?

时间:2012-10-26 05:18:49

标签: git

换句话说,是否有一个用于管理git版本的工具,类似于nvmrvm对节点和ruby(分别)做的事情?

修改

我想我的问题标题有点误导。我真的不想同时使用多个版本。下载源代码压缩包并手动构建/安装很烦人。简化流程会很棒。虽然有一般的包管理工具,例如brewyumapt,但它们的更新速度很慢,并且它们在不同平台之间存在差异。有一个简单的界面来安装/升级git会让我高兴:)

假设我希望保持最新的git版本,甚至新安装在新的盒子/帐户中,而无需手动完成所有构建步骤。在我完美的世界里,就像做这样的事情一样简单:

$ git --version
-bash: git: command not found
$ curl -sL https://SOMEURL | bash use latest
downloading v1.8.0...
building v1.8.0...
done!
using git v1.8.0
$ git --version
git version v1.8.0
$ gvm ls
  v1.8.0
* default -> 1.8 (v1.8.0)

或者升级如下:

$ git --version
git version 1.7.9.1
$ gvm ls
  v1.7.9.1
  v1.7.8
  v1.7.7.5
* default -> 1.7 (v1.7.9.1)
$ gvm install latest
downloading 1.8.0...
building 1.8.0...
done!
$ gvm alias default 1.8
$ gvm use default
now using git v1.8.0
$ git --version
git version 1.8.0
$ gvm ls
  v1.8.0
  v1.7.9.1
  v1.7.8
  v1.7.7.5
* default -> 1.8 (v1.8.0)

2 个答案:

答案 0 :(得分:4)

不是我听说过的。但是,您可以利用分发的包管理器来执行此任务。

例如,安装了Homebrew的Mac用户可以使用brew switch命令更改特定包的当前活动版本。许多其他包管理器也可以使用相同的技巧。

答案 1 :(得分:3)

考虑到“Git repository backwards compatibility”非常稳定,使用多个git版本的原因很少。
大多数缺少的功能会影响客户端,而不是它从远程存储库推送/拉出的能力(some transport mechanisms lacking for git prior to 1.6.4除外)。

这就是没有专门用于此的工具的原因 话虽如此:

  • 没有什么能阻止你在本地编译尽可能多的git,使用不同的安装路径。
  • 您仍然可以使用yum install git-core,或者如果您使用的是基于Debian的发行版,例如Ubuntu apt-get install git-core。 但是,won't allows for a multiple installation of the same package 但您仍然可以在任何给定时间搜索并选择所需的版本:yum search git-core