17

Вопрос по github, git – Возникли проблемы при загрузке архивных файлов Git из Private Repo

Мне нужна возможность загружать наше приложение по определенным тегам, но я не могу найти рабочее решение для этого. Загрузка архивов на основе тега git выглядит многообещающе, но я не могу заставить его работать с помощью Curl. Я попробовал следующее, но все, что я получаю, это источник для страницы github 404.

curl -sL https://github.com/$ACCOUNT/$PRIVATE_REPO/tarball/0.2.0.257m?login=$MY_USER_NAME&token=$MY_TOKEN > 0.2.0.257m.tar
  • Error: User Rate Limit ExceededNot Found

    от
  • Error: User Rate Limit Exceeded

    от
  • Error: User Rate Limit Exceeded

    от Steven_JP
  • Error: User Rate Limit Exceeded

    от
  • Error: User Rate Limit Exceededstackoverflow.com/questions/23347134/…

    от
  • Error: User Rate Limit Exceededwget --no-check-certificate --output-document=<version>.tar.gz https://api.github.com/repos/<owner>/<repo>/tarball/<version>?access_token=<OAUTH-TOKEN>

    от
  • Error: User Rate Limit Exceededcurl -sL --user "${username}:${password}" https://github.com/$account/$repo/tarball/$tag_name > tarball.tar

    от Steven_JP
  • Вы пробовали wget? Или просто использовать git для клонирования кода из определенного тега?

    от Andrew T Finnell
  • Вы пробовали ту же схему URL в публичном репо?

    от CharlesB
  • 14

    После создания

    токен доступа,

    ты можешь использоватьwget:

    wget --output-document=<version>.tar.gz \
        https://api.github.com/repos/<owner>/<repo>/tarball/<version>?access_token=<OAUTH-TOKEN>
    

    или жеcurl:

    curl -L https://api.github.com/repos/<owner>/<repo>/tarball/<version>?access_token=<OAUTH-TOKEN> \
        > <version>.tar.gz
    

    Более подробную информацию можно найти вСправочник по GitHub API для ссылок на архив.

  • 27

    Для публичного репо у вас есть

    этот смысл перечисляя некоторые примеры:

    wget --no-check-certificate https://github.com/sebastianbergmann/phpunit/tarball/3.5.5 -O ~/tmp/cake_phpunit/phpunit.tgz
    

    Для частного репозитория попробуйте передать свои учетные данные в директиве post:

    wget --quiet --post-data="login=${login}&token=${token}" --no-check-certificate https://github.com/$ACCOUNT/$PRIVATE_REPO/tarball/0.2.0.257m
    

    Или используйте команду curl, как в вопросе SO & quot;мерзавец эквивалентноsvn export or github workaround& quot ;, также подробно объясняется в:
    & Quot;A curl tutorial using GitHub's API& Quot ;.

    OP Steven Jp сообщает, сделавcurl командная работа:

    The final curl command ended up looking something like this:

    curl -sL --user "${username}:${password}" https://github.com/$account/$repo/tarball/$tag_name > tarball.tar
    

    (в несколько строк для удобства чтения)

    curl -sL --user "${username}:${password}" 
      https://github.com/$account/$repo/tarball/$tag_name
      > tarball.tar
    

  • 1

    Войдите в свою личную организацию на Github.com

    а затем перейдите сюда, чтобы создать свой токен: https://github.com/settings/applications#personal-access-tokens

    При попытке свернуться в вашу личную организацию, используйте следующее:

    curl --header 'Authorization: token ADDACCESSTOKENHERE' \
     --header 'Accept: application/vnd.github.v3.raw' \
     --remote-name \
     --location https://api.github.com/repos/ORG/PROJECT/contents/FILE
    

    Замените то, что в CAPS, своей информацией ...