summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2016-03-19 18:54:18 +0000
committerRémy Coutable <remy@rymai.me>2016-03-21 12:30:29 +0100
commita4e19b6cb09d6f128942811b02b89aa671776ba2 (patch)
tree875d1aa16d6488342f95b3506fd8770866df1a46 /app
parent8b90b1f3d4f80d4285577c80d800cc5afcbeb40e (diff)
downloadgitlab-ce-a4e19b6cb09d6f128942811b02b89aa671776ba2.tar.gz
Merge branch 'issue-branch-iid-postfix' into 'master'
#to_branch_name now uses the iid as postfix Given the branch name 'mep-mep' with an iid being 1, the current way, master's way, would yield a branch name of 1-mep-mep. The problem for larger projects however would be that a developer might forget what iid the issue was. When this developer would try to tab complete it would: - Or result in 20+ branches possibly - Or start with the wrong digit, try again with digit++ - Would see 20 branches, repeat Thus the obvious way of solving this is letting the dev tab complete on the issue title, which is easier to remember. @DouweM Should this be labelled `pick-in-master`? See merge request !3308
Diffstat (limited to 'app')
-rw-r--r--app/models/issue.rb7
-rw-r--r--app/services/merge_requests/build_service.rb2
-rw-r--r--app/services/system_note_service.rb2
3 files changed, 5 insertions, 6 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb
index 053387cffd7..5347d4fa1be 100644
--- a/app/models/issue.rb
+++ b/app/models/issue.rb
@@ -106,9 +106,8 @@ class Issue < ActiveRecord::Base
def related_branches
return [] if self.project.empty_repo?
- self.project.repository.branch_names.select do |branch|
- branch =~ /\A#{iid}-(?!\d+-stable)/i
- end
+
+ self.project.repository.branch_names.select { |branch| branch.end_with?("-#{iid}") }
end
# Reset issue events cache
@@ -139,7 +138,7 @@ class Issue < ActiveRecord::Base
end
def to_branch_name
- "#{iid}-#{title.parameterize}"
+ "#{title.parameterize}-#{iid}"
end
def can_be_worked_on?(current_user)
diff --git a/app/services/merge_requests/build_service.rb b/app/services/merge_requests/build_service.rb
index fa34753c4fd..6e9152e444e 100644
--- a/app/services/merge_requests/build_service.rb
+++ b/app/services/merge_requests/build_service.rb
@@ -51,7 +51,7 @@ module MergeRequests
# be interpreted as the use wants to close that issue on this project
# Pattern example: 112-fix-mep-mep
# Will lead to appending `Closes #112` to the description
- if match = merge_request.source_branch.match(/\A(\d+)-/)
+ if match = merge_request.source_branch.match(/-(\d+)\z/)
iid = match[1]
closes_issue = "Closes ##{iid}"
diff --git a/app/services/system_note_service.rb b/app/services/system_note_service.rb
index f09b77c4a57..2afcaad4646 100644
--- a/app/services/system_note_service.rb
+++ b/app/services/system_note_service.rb
@@ -210,7 +210,7 @@ class SystemNoteService
# Called when a branch is created from the 'new branch' button on a issue
# Example note text:
#
- # "Started branch `201-issue-branch-button`"
+ # "Started branch `issue-branch-button-201`"
def self.new_issue_branch(issue, project, author, branch)
h = Gitlab::Application.routes.url_helpers
link = h.namespace_project_compare_url(project.namespace, project, from: project.default_branch, to: branch)