mirror of
https://github.com/discourse/discourse.git
synced 2024-11-22 20:36:39 +08:00
68b4fe4cf8
See https://github.com/discourse/discourse/security/advisories/GHSA-rcc5-28r3-23rr Co-authored-by: OsamaSayegh <asooomaasoooma90@gmail.com> Co-authored-by: Daniel Waterworth <me@danielwaterworth.com>
21 lines
380 B
Ruby
21 lines
380 B
Ruby
# frozen_string_literal: true
|
|
|
|
module GitUrl
|
|
class << self
|
|
SSH_REGEXP = /(\w+@(\w+\.)*\w+):(.*)/
|
|
|
|
def normalize(url)
|
|
if m = SSH_REGEXP.match(url)
|
|
url = "ssh://#{m[1]}/#{m[3]}"
|
|
end
|
|
|
|
if url.start_with?("https://github.com/") && !url.end_with?(".git")
|
|
url = url.gsub(/\/$/, '')
|
|
url += ".git"
|
|
end
|
|
|
|
url
|
|
end
|
|
end
|
|
end
|