Home > database >  Git, Conda - How can I "pip install git git:<repo>" with the new Git policies in pla
Git, Conda - How can I "pip install git git:<repo>" with the new Git policies in pla

Time:04-07

I have this conda yml file for installing dependencies and creating a new conda env.

conda_env.yml forked from https://github.com/MishaLaskin/rad:

name: rad
channels:
  - defaults
dependencies:
  - python=3.6
  - pytorch
  - torchvision
  - cudatoolkit=9.2
  - absl-py
  - pyparsing
  - pillow=6.1
  - pip:
    - termcolor
    - git git://github.com/deepmind/dm_control.git
    - git git://github.com/1nadequacy/dmc2gym.git
    - tb-nightly
    - imageio
    - imageio-ffmpeg
    - torchvision
    - scikit-image
    - tabulate

I try to run conda env create --file conda_env.yml and here's the stack trace I get.

Collecting package metadata (repodata.json): done
Solving environment: done
Installing pip dependencies: - Ran pip subprocess with arguments:
['/home/dyung6/anaconda3/envs/rad/bin/python', '-m', 'pip', 'install', '-U', '-r', '/home/dyung6/rad/condaenv.835gcx7g.requirements.txt']
Pip subprocess output:
Collecting git git://github.com/deepmind/dm_control.git (from -r /home/dyung6/rad/condaenv.835gcx7g.requirements.txt (line 2))
  Cloning git://github.com/deepmind/dm_control.git to /tmp/pip-req-build-nc4w5hv8

Pip subprocess error:
  Running command git clone -q git://github.com/deepmind/dm_control.git /tmp/pip-req-build-nc4w5hv8
  fatal: remote error:
    The unauthenticated git protocol on port 9418 is no longer supported.
  Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
WARNING: Discarding git git://github.com/deepmind/dm_control.git. Command errored out with exit status 128: git clone -q git://github.com/deepmind/dm_control.git /tmp/pip-req-build-nc4w5hv8 Check the logs for full command output.
ERROR: Command errored out with exit status 128: git clone -q git://github.com/deepmind/dm_control.git /tmp/pip-req-build-nc4w5hv8 Check the logs for full command output.
                                                                                                                                                                                                               failed

CondaEnvException: Pip failed

Seems like the new git policies block you from doing this. Is there anyway around this?

CodePudding user response:

As @torek points out, and the documentation directed to in the error message explains, the git:// protocol has phased out on GitHub. Switch to using https://, i.e., in this case:

  - pip:
    - git https://github.com/deepmind/dm_control.git
    - git https://github.com/1nadequacy/dmc2gym.git
    ...
  • Related