相关疑难解决方法(0)

如何从GitHub下载.zip进行特定的提交?

我想下载一个.zip与github上托管的库的源,但我不想要主人,因为每次下载我都可以下载不同的版本.

这个特殊的库没有标签,所以我不能使用它.

那么如何为特定的提交sha下载source.zip呢?

git github

100
推荐指数
3
解决办法
4万
查看次数

Python setuptools:如何在install_requires下列出私有存储库?

我正在setup.py为项目创建一个文件,该文件依赖于私有GitHub存储库.该文件的相关部分如下所示:

from setuptools import setup
setup(name='my_project',
    ...,
    install_requires=[
        'public_package',
        'other_public_package',
        'private_repo_1',
        'private_repo_2',
    ],
    dependency_links=[
        'https://github.com/my_account/private_repo_1/master/tarball/',
        'https://github.com/my_account/private_repo_2/master/tarball/',
    ],
    ...,
)
Run Code Online (Sandbox Code Playgroud)

我使用的setuptools,而不是distutils因为后者不支持install_requiresdependency_links参数每这一答案.

上面的安装文件无法访问带有404错误的私有存储库 - 这是预期的,因为GitHub会将404返回到未经授权的私有存储库请求.但是,我无法弄清楚如何进行setuptools身份验证.

以下是我尝试过的一些事情:

  1. 使用git+ssh://,而不是https://dependency_links为我想如果安装与回购pip.这失败是因为setuptools无法识别此协议("未知的url类型:git + ssh"),尽管分发文档说它应该.同上git+httpsgit+http.

  2. https://<username>:<password>@github.com/...- 仍然得到404.(此方法不能与命令行一起使用curlwget从命令行使用 - 尽管curl -u <username> <repo_url> -O <output_file_name>确实有效.)

  3. 将setuptools(0.9.7)和virtualenv(1.10)升级到最新版本.也尝试安装分发虽然这个概述说它被合并回setuptools.无论哪种方式,没有骰子.

目前我只是setup.py打印出一个警告,必须单独下载私人回购.这显然不太理想.我觉得有一些显而易见的东西让我失踪,但却想不到它会是什么.:)

这里没有答案的重复问题.

python github setuptools

65
推荐指数
4
解决办法
2万
查看次数

如何使用github API进行ssh身份验证?

在通过命令行访问GitHub API时是否有某种方法可以使用基于ssh的身份验证(例如,通过curl等?).

FWIW,我尝试了以下的许多变体(改变了我指定我的公共ssh密钥文件的方式),但在每种情况下我仍然提示我输入密码:

% curl --pubkey ~/.ssh/id_rsa.pub --user yrstruly https://api.github.com/user/repos
Run Code Online (Sandbox Code Playgroud)

ssh curl github github-api

25
推荐指数
1
解决办法
9569
查看次数

从github下载tarball而不卷曲

我有一个嵌入式系统,我无法安装任何东西,我可能用来获取东西的唯一工具是wget.事实证明,你不能用curl做同样的事情.我也不能为这个系统交叉编译,所以我需要求助于Python或shell脚本.有一个名为Dulwich的git的纯Python实现实际上有一些我需要交叉编译的C代码......所以我甚至试图调查那个,仅供参考.

我需要的是从github存储库获取代码,显而易见的解决方案是使用它们提供的tarball.我通常会从存储库页面复制链接以下载zip按钮,并使用授权令牌而不是用户名和密码.它的工作非常简单,如下所示:

curl -L https://<token>@github.com/<org|user>/<repo>/archive/master.tar.gz | tar xz
Run Code Online (Sandbox Code Playgroud)

原来wget有点尴尬,无论我尝试过什么都行.

linux shell curl wget github

6
推荐指数
1
解决办法
2931
查看次数

标签 统计

github ×4

curl ×2

git ×1

github-api ×1

linux ×1

python ×1

setuptools ×1

shell ×1

ssh ×1

wget ×1