# HG changeset patch # User Andrew Bartlett # Date 2015-06-18 04:54:35 # Node ID c082a017b366a711dd1b248cdd6fa11dbe6d5e2a # Parent 329c0584cba891252ccd0c742d47d3d1219e71e6 git: Allow git:// URLs as a source to clone from diff --git a/kallithea/lib/utils2.py b/kallithea/lib/utils2.py --- a/kallithea/lib/utils2.py +++ b/kallithea/lib/utils2.py @@ -469,7 +469,7 @@ def uri_filter(uri): proto = '' - for pat in ('https://', 'http://'): + for pat in ('https://', 'http://', 'git://'): if uri.startswith(pat): uri = uri[len(pat):] proto = pat diff --git a/kallithea/lib/vcs/backends/git/repository.py b/kallithea/lib/vcs/backends/git/repository.py --- a/kallithea/lib/vcs/backends/git/repository.py +++ b/kallithea/lib/vcs/backends/git/repository.py @@ -174,6 +174,9 @@ class GitRepository(BaseRepository): if os.path.isdir(url) or url.startswith('file:'): return True + if url.startswith('git://'): + return True + if '+' in url[:url.find('://')]: url = url[url.find('+') + 1:] diff --git a/kallithea/model/validators.py b/kallithea/model/validators.py --- a/kallithea/model/validators.py +++ b/kallithea/model/validators.py @@ -458,7 +458,7 @@ def ValidCloneUri(): elif repo_type == 'git': from kallithea.lib.vcs.backends.git.repository import GitRepository - if url.startswith('http'): + if url.startswith('http') or url.startswith('git'): # initially check if it's at least the proper URL # or does it pass basic auth GitRepository._check_url(url)