Git安装错误 缺少安装候选项

11

我尝试使用命令sudo apt-get install git在Ubuntu 12.10上安装git,但是我收到了以下错误信息:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package git is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'git' has no installation candidate

我应该进一步做什么?


在一个新安装的Ubuntu 12.04系统上,我可以简单地运行apt-get install git命令,它会安装git及其所有依赖项。(我没有尝试过12.10,但14.04是一样的,我认为这段时间内也没有改变。)所以我认为你的设置有问题:
  • 你是否运行了apt-get update命令?
  • 你的/etc/apt/sources.list文件是什么样子的?
- Michael Adam
1
Ubuntu 12.10已经不再受支持,因此软件仓库也不再得到支持。 - Holloway
@Trengot:没错,可以看下面我回答的内容。 - Michael Adam
嘿,我在16.10上遇到了同样的问题。我尝试了这种方法。但它没有起作用。还有其他解决方案吗? - Anonymous Creator
6个回答

15

尝试运行以下命令。

sudo rm -vf /var/lib/apt/lists/*
sudo apt-get update

10

首先运行此命令进行更新

sudo apt update 

然后运行这个

sudo apt-get install git

4

应该可以安装git软件包。原则上,如果出现类似这样的情况,您应该验证以下内容。

  • Make sure that the contents of your /etc/apt/sources.list file is sane. It should contain something like this:

    deb http://archive.ubuntu.com/ubuntu precise main restricted universe multiverse
    deb http://archive.ubuntu.com/ubuntu precise-updates main restricted universe multiverse
    deb http://security.ubuntu.com/ubuntu precise-security main restricted universe multiverse
    
  • Make sure you have run apt-get update before trying to install git.

请注意,上述sources.list适用于precise(12.04)。12.10被称为quantal。但请注意,12.10已经不再受支持(EOL是2014年5月-请参见此处)。因此,您的问题的解决方案可能是12.10的软件包源在服务器上不存在,因此该消息实际上是正确的:在服务器上根本没有任何候选项......

解决方案是升级至至少下一个LTS版本(14.04)。


嘿,我在16.10上遇到了同样的问题。我尝试了这种方法。但它没有起作用。还有其他解决方案吗? - Anonymous Creator

1
我也遇到了这个问题。在“软件和更新”中,Canonical支持的免费开源软件(主要)未被选中,在“可从CD-ROM / DVD安装”部分,该框已被选中,导致apt在不存在的光驱上查找软件包。

在广泛搜索后,这最终成为了我的解决方案。感谢您发布这个! - user2859829

0

我在禁用自动更新时,当取消“系统设置/软件和更新”的所有选项时,出现了此错误。 在“Ubuntu软件”和“其他软件”中重新勾选所有复选框可解决该问题。


0

我找到了一份关于在Ubuntu 12上使用Git的好教程这里

它主要提到了安装前的依赖项:

sudo apt-get install libcurl4-gnutls-dev libexpat1-dev gettext libz-dev libssl-dev build-essential

并且要使用此方法进行git安装: sudo apt-get install git-core sudo apt-get update

另外还说: 安装完成后,您可以从Google代码页面下载最新版本的Git。

wget https://git-core.googlecode.com/files/git-1.8.1.2.tar.gz

下载完成后,解压文件并切换到该目录:

tar -zxf git-1.8.1.2.tar.gz

cd git-1.8.1.2

如果您想进行全局安装,请使用sudo前缀分别以自己和root身份安装:

make prefix=/usr/local all
sudo make prefix=/usr/local install

如果您将来需要更新Git,可以使用Git本身来完成。
git clone git://git.kernel.org/pub/scm/git/git.git

去看看教程,给她留个评论吧 ;-)


不需要从源代码安装git。在我刚刚安装的Ubuntu盒子(12.04)中,我只需运行“apt-get install git”命令,它将拉取所有必需的依赖项,包括git-core等。 - Michael Adam
我猜你是对的,但那就是 OP 所做的事情,而且失败了。所以我加入了一些谷歌搜索结果(出于某种原因 :-) 但我确实这样做了)。我在 /etc/apt/sources 上给你的评论点个赞。 - Marco M. von Hagen
谢谢。将其转化为答案。实际答案可能是12.10已经到了生命周期结束(EOL)的阶段... :) - Michael Adam

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接