4

我在 git 下载页面http://git-scm.com/downloads [在许多其他教程页面中] 上看到您可以通过自身更新 git。目前我的桌面有 git 1.7.9.5,最新的是 1.8.1.3

我正在运行 Ubuntu 12.04 LTS 并在主目录中运行这些命令 [~/]

我运行了以下命令并得到了以下输出:

~$ git version
git version 1.7.9.5
~$ git clone https://github.com/git/git.git
Cloning into 'git'...
remote: Counting objects: 149633, done.
remote: Compressing objects: 100% (49646/49646), done.
remote: Total 149633 (delta 109386), reused 136311 (delta 98050)
Receiving objects: 100% (149633/149633), 34.92 MiB | 864 KiB/s, done.
Resolving deltas: 100% (109386/109386), done.
~$ git version
git version 1.7.9.5

最终结果是 git 版本是一样的。唯一的区别是现在我的主目录中有一个名为 git 的文件夹,我只能假设是组成该软件的文件。我显然遗漏了几个步骤,我已经在 Google 和 YouTube 上搜索过,以找到演练或某种进一步的解释,而不是“你可以通过 git 获取 git,只需键入此命令”。

如果之前已经回答过这个问题,我深表歉意。如果有人知道我在哪里可以找到缺少的步骤,我将非常感谢链接/解释。

我也很抱歉,这似乎是一件我自己无法弄清楚的极其简单的事情。

最后,我非常感谢所有帮助我找到答案的人!

编辑 3.18.13:所以当我本周得到一台新笔记本电脑时,我最终不得不再次这样做;多亏了你们,我才能跑git --version回来git version 1.8.2

我按照 git book 中的说明进行操作,感谢iltempo

然后,编译并安装:

$ tar -zxf git-1.7.2.2.tar.gz
$ cd git-1.7.2.2
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install

除了我从 github 获得了一个 zip 文件,所以我将其解压缩。我没有做任何其他步骤...

这是/是我第一次从源代码构建东西,所以我不太确定下面提到的一些术语是什么意思:

'确保/usr/local/bin在你的路径之前' - iltempo

我看到了如何将目录添加到我的路径,但我不明白这个的含义或当我这样做时发生了什么。

4

2 回答 2

7

“使用 git 更新 git”意味着在克隆https://github.com/git/git后使用更新 git repogit pull

您仍然需要从上述来源构建git,并在看到git --version命令的差异之前安装它。

查看“ INSTALL”文件:

$ make prefix=/usr/local all doc info ;# as yourself
# make prefix=/usr/local install install-doc install-html install-info ;# as root

由于您要在 /usr/local/bin 中安装更新的 git,因此请确保该路径位于您自己的$PATH环境变量中(您可以在您的环境变量中设置.profile


另一种方法是使用 apt-install(请参阅“如何在 Ubuntu Hardy 上升级 Git? ”),但是当我查找包 git-core时,Precise 包只升级到 git_1.7.9.5。
这就是为什么从源代码构建可以替代等待 git-core 更新的原因。

于 2013-02-28T09:13:03.680 回答
1

git使用标准的 GNU 自动工具设置,请参阅INSTALL源文件中的文件。然后你就可以跳标准./configure; make; make install舞了。

对于我个人使用,我使用 进行设置prefix=$HOME,并alias git=~/bin/git在我的 中添加一个.bashrc,所以PATH这不是问题。

于 2013-03-01T02:10:07.513 回答