Create new merge request without worrying about branches
Background
Right now I can easily create a merge request from within an issue by clicking the Create merge request button. GitLab abstracts away the messiness of branches. And I can start work right away and collaborate with other team members.
Just now I wanted to do that, but without having to worry about even creating an issue. I wanted to start a merge request in the www-gitlab-com project to work on a new blog post. I didn't have a lot of ideas about content yet. But I knew who I wanted to pull in, and just start a discussion. I didn't want to waste time with creating a separate issue. So I just wanted to create a merge request to start. But I was stuck with first creating a branch. GitLab should do that for me. (And this is the mr I created after creating the branch: gitlab-com/www-gitlab-com!17409 (merged).)
I think other uses of this would be when updating the handbook. Often times people want to make a process change in GitLab in whatever department. They create an issue to discuss this and use a lot of time going back and forth. Instead, a better process is to start discussion in a merge request right away. This puts focus on at least committing to a handbook change (because the mr would likely be in the www-gitlab-com project, and it becomes a forcing function to help people focus on the handbook, because we are handbook first.)
Proposal
There should be a flow where I can start a new merge request without caring about branching. I can see two possibilities:
- A merge request that doesn't even require a source branch at all. I think this would be a bigger change, and maybe not the smallest MVC change.
- A flow where I create a merge request and just specify the merge request title. And then when I hit submit, GitLab creates the branch for me automatically, based on the merge request title.
- Currently when I create a new merge request, GitLab forces me to pick a source branch in the first step. Perhaps GitLab can make it super easy at that step to create a new source branch automatically. This wouldn't be as easy, but it could be a smaller MVC.