summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Stufft <donald@stufft.io>2015-03-16 13:57:41 -0400
committerDonald Stufft <donald@stufft.io>2015-03-16 13:57:41 -0400
commitfca91e1affacfdc601d062c880bc4f662bc6e82a (patch)
treebba9570544f82de197c9dd40c359beb2b6b6ad23
parente3e335d8e60ed9cd00dde7830bd8cce83703eeb4 (diff)
downloadpip-revert-2513-ssh_and_commit_support.tar.gz
Revert "#2414: parse SSH repositories url with a commit hash"revert-2513-ssh_and_commit_support
-rw-r--r--pip/vcs/__init__.py14
-rw-r--r--pip/vcs/git.py2
-rw-r--r--tests/unit/test_vcs.py34
3 files changed, 3 insertions, 47 deletions
diff --git a/pip/vcs/__init__.py b/pip/vcs/__init__.py
index b9a94669e..96cb1319f 100644
--- a/pip/vcs/__init__.py
+++ b/pip/vcs/__init__.py
@@ -144,17 +144,9 @@ class VersionControl(object):
url = self.url.split('+', 1)[1]
scheme, netloc, path, query, frag = urllib_parse.urlsplit(url)
rev = None
- if scheme == 'ssh' and not path: # Fix urllib_parse parsing
- url_splitted = url.split('@')
- if len(url_splitted) == 3:
- url = '%s@%s' % (url_splitted[0], url_splitted[1])
- rev = url_splitted[2].split('#')[0]
- assert len(url_splitted) < 4,\
- "You can't have more than two @ in VCS url."
- else:
- if '@' in path:
- path, rev = path.rsplit('@', 1)
- url = urllib_parse.urlunsplit((scheme, netloc, path, query, ''))
+ if '@' in path:
+ path, rev = path.rsplit('@', 1)
+ url = urllib_parse.urlunsplit((scheme, netloc, path, query, ''))
return url, rev
def get_info(self, location):
diff --git a/pip/vcs/git.py b/pip/vcs/git.py
index efb8b2869..d575f148a 100644
--- a/pip/vcs/git.py
+++ b/pip/vcs/git.py
@@ -195,8 +195,6 @@ class Git(VersionControl):
url = url.replace('ssh://', '')
else:
url, rev = super(Git, self).get_url_rev()
- # For explicit SSH URLs, remove 'ssh://' to clone
- url = url.replace('ssh://', '')
return url, rev
diff --git a/tests/unit/test_vcs.py b/tests/unit/test_vcs.py
index 59de98bd9..8b7e6e8ea 100644
--- a/tests/unit/test_vcs.py
+++ b/tests/unit/test_vcs.py
@@ -39,40 +39,6 @@ def test_git_get_src_requirements():
])
-def test_git_urls():
- """
- Test git url support.
-
- SSH has special handling.
- """
- https_repo = Git(
- url='git+https://github.com/Eyepea/pip.git'
- '@8cf54fff31b650847e0cddc2cd2951c34e0b4822#egg=pip'
- )
- implicit_ssh_repo = Git(
- url='git+git@github.com:Eyepea/pip.git'
- '@8cf54fff31b650847e0cddc2cd2951c34e0b4822#egg=pip'
- )
-
- explicit_ssh_repo = Git(
- url='git+ssh://git@github.com:Eyepea/pip.git'
- '@8cf54fff31b650847e0cddc2cd2951c34e0b4822#egg=pip'
- )
-
- assert https_repo.get_url_rev() == (
- 'https://github.com/Eyepea/pip.git',
- '8cf54fff31b650847e0cddc2cd2951c34e0b4822',
- )
- assert implicit_ssh_repo.get_url_rev() == (
- 'git@github.com:Eyepea/pip.git',
- '8cf54fff31b650847e0cddc2cd2951c34e0b4822',
- )
- assert explicit_ssh_repo.get_url_rev() == (
- 'git@github.com:Eyepea/pip.git',
- '8cf54fff31b650847e0cddc2cd2951c34e0b4822',
- )
-
-
def test_translate_egg_surname():
vc = VersionControl()
assert vc.translate_egg_surname("foo") == "foo"