Skip to content
Snippets Groups Projects
Commit 70ca3370 authored by Zeger-Jan van de Weg's avatar Zeger-Jan van de Weg
Browse files

\#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.
parent eba00325
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -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
Loading
Loading
@@ -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)
Loading
Loading
Loading
Loading
@@ -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}"
 
Loading
Loading
Loading
Loading
@@ -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)
Loading
Loading
Loading
Loading
@@ -131,7 +131,7 @@ describe Issue, models: true do
end
 
describe '#related_branches' do
it "should " do
it "selects the right branches" do
allow(subject.project.repository).to receive(:branch_names).
and_return(["mpempe", "#{subject.iid}mepmep", subject.to_branch_name])
 
Loading
Loading
@@ -151,10 +151,10 @@ describe Issue, models: true do
end
 
describe "#to_branch_name" do
let(:issue) { build(:issue, title: 'a' * 30) }
let(:issue) { create(:issue, title: 'a' * 30) }
 
it "starts with the issue iid" do
expect(issue.to_branch_name).to match /\A#{issue.iid}-a+\z/
expect(issue.to_branch_name).to match /-#{issue.iid}\z/
end
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment