background: pip support ssh link suffix with
- branch name,
- a commit hash,
- a tag name
- a git ref
However, pip has a problem in upgrade some package depends on these ssh links.
in a setup.py of a package called CurrentPackage that is version 5.1.2
install_requires=[ "MyOwnPackage @ git+ssh://[email protected]/myusename/MyOwnPackage@master", ], i then pip install --upgrade -e .
Requirement already satisfied, skipping upgrade: MyOwnPackage@git+ssh://[email protected]/myusename/MyOwnPackage@master from git+ssh://****@github.com/myusename/MyOwnPackage@master in /opt/anaconda3/lib/python3.8/site-packages (from CurrentPackage==5.1.2) (0.0.1) The master branch is already 0.0.2. It clearly didn't upgrade MyOwnPackage to the new master branch commit, still staying at 0.0.1.