diff options
author | Douwe Maan <douwe@gitlab.com> | 2015-11-30 21:14:46 +0100 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2015-11-30 21:36:34 +0100 |
commit | d6a5b45c8ea5ec7a68e213636fde405c52bb90e4 (patch) | |
tree | e711cd92c57e20cc7900875017fb93d670537c00 /app/models/commit.rb | |
parent | a7be01cd07430a4302668224947b2ed135c2d7bb (diff) | |
download | gitlab-ce-d6a5b45c8ea5ec7a68e213636fde405c52bb90e4.tar.gz |
Recognize issue/MR/snippet/commit links as references.
Diffstat (limited to 'app/models/commit.rb')
-rw-r--r-- | app/models/commit.rb | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/app/models/commit.rb b/app/models/commit.rb index 492f6be1ce3..fc03d2580d7 100644 --- a/app/models/commit.rb +++ b/app/models/commit.rb @@ -73,16 +73,23 @@ class Commit # This pattern supports cross-project references. def self.reference_pattern %r{ - (?:#{Project.reference_pattern}#{reference_prefix})? - (?<commit>\h{6,40}) + #{link_reference_pattern} | + (?: + (?:#{Project.reference_pattern}#{reference_prefix})? + (?<commit>\h{6,40}) + ) }x end + def self.link_reference_pattern + super("commit", /(?<commit>\h{6,40})/) + end + def to_reference(from_project = nil) if cross_project_reference?(from_project) - "#{project.to_reference}@#{id}" + project.to_reference + self.class.reference_prefix + self.short_id else - id + self.short_id end end |