GitLab FOSS merge requestshttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests2019-06-13T10:09:58Zhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14586Check for branch changes.2019-06-13T10:09:58ZJacob SchatzCheck for branch changes.## What does this MR do?
Checks for changes in branch and rejects and asks to create new branch if nessesary.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
...## What does this MR do?
Checks for changes in branch and rejects and asks to create new branch if nessesary.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?10.1Luke "Jared" BennettLuke "Jared" Bennetthttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14052WIP: Make sure we don't always fetch_ref for merge request diffs2017-10-06T17:49:12Zusername-removed-423915WIP: Make sure we don't always fetch_ref for merge request diffs## What does this MR do?
Make sure we don't always fetch_ref for merge request diffs
## Are there points in the code the reviewer needs to double check?
I am unsure where we should put this test, and the current test segfault on...## What does this MR do?
Make sure we don't always fetch_ref for merge request diffs
## Are there points in the code the reviewer needs to double check?
I am unsure where we should put this test, and the current test segfault on my computer...
## Why was this MR needed?
To speed up diffs creation.
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by Backend
## What are the relevant issue numbers?
Closes #3629210.1username-removed-423915username-removed-423915https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14678Show stale instead of merged if the branch is old2017-10-06T13:57:38Zusername-removed-423915Show stale instead of merged if the branch is old## What does this MR do?
Show stale instead of merged if the branch is old
We consider the branch is old when the updated date was
3 months older than the default branch updated date.
## Are there points in the code the reviewe...## What does this MR do?
Show stale instead of merged if the branch is old
We consider the branch is old when the updated date was
3 months older than the default branch updated date.
## Are there points in the code the reviewer needs to double check?
Are people relying on that label?
Maybe we want to use another color for `stale`?
## Why was this MR needed?
By doing so, it would greatly improve the performance
in this page, because it's pretty costly to find if it's
merged or not when the branch is far behind.
We assume that when it's old, it's probably far behind.
The idea was brought up in:
https://gitlab.com/gitlab-org/gitlab-ce/issues/37429#note_42284280
## Screenshots (if relevant)
![Screen_Shot_2017-10-04_at_20.02.34](/uploads/eabb08b1535c5c02b5347bc07c3cef4a/Screen_Shot_2017-10-04_at_20.02.34.png)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
## What are the relevant issue numbers?
We're trying to improve `BranchesController#index`, https://gitlab.com/gitlab-org/gitlab-ce/issues/3742910.1username-removed-423915username-removed-423915https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14037Send a confirmation email when the user adds a secondary email address2017-10-05T11:01:07Zusername-removed-194645Send a confirmation email when the user adds a secondary email address## What does this MR do?
When a user adds a secondary email address, we now send a conformation email. The Devise `confirmable` capability is used to deliver the email in the same way and format style as a new user email confirmation...## What does this MR do?
When a user adds a secondary email address, we now send a conformation email. The Devise `confirmable` capability is used to deliver the email in the same way and format style as a new user email confirmation.
I believe this feature is mostly complete. Feature and rspec tests are written, however the handling of the confirmation path (that the user links on) is not explicitly tested and probably should be.
A couple notes:
- At this time, I don't think a "Re-send confirmation" button on the email list is necessary. It's easy to simply remove and re-add the email, which will trigger another confirmation. That's something that could be considered in the future if there is too much friction in the process.
- I think the "Unconfirmed" label should be gray, typically by using the `label-default` class. However, the background is way too light. So for now I used the orange `label-warning`, though next to the Remove button, I almost think the Remove button should be red, `label-danger`
- It's unclear if we need to honor `user.can?(:receive_notifications)` for this feature. For now, assume it does not since the actual email sending process is handled by Devise.
- I added Spinach feature tests, as that was where this particular panel is currently tested. However I just read that you are trying not to add more Spinach tests. Maybe it's acceptable for now until that entire test gets moved to Rspec features.
## Are there points in the code the reviewer needs to double check?
An index was added in the migration - I don't know if the DOWNTIME variable should be set or not.
@DouweM
## Why was this MR needed?
As mentioned in the issue, in order to use secondary emails for GPG verification, they must first be validated.
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #37385, #28621, #3695910.1username-removed-194645username-removed-194645https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14376Make GPG validation case insensitive2017-10-04T13:41:53Zusername-removed-63055Make GPG validation case insensitive## What does this MR do?
Fixes validation of GPG signatures when the email address on the GPG key is not all in lower case.
## Are there points in the code the reviewer needs to double check?
That I've correctly covered all case...## What does this MR do?
Fixes validation of GPG signatures when the email address on the GPG key is not all in lower case.
## Are there points in the code the reviewer needs to double check?
That I've correctly covered all cases.
## Why was this MR needed?
Because GitLab forces addresses to lower-case (in my case, when getting the from LDAP), it means that all email address comparisons need to be case insensitive.
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [x] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
#3700910.1username-removed-444username-removed-444https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13927Lock issuables2017-09-28T12:07:37ZJarka Kadlecovajarka@gitlab.comLock issuables## What does this MR do?
It supports locking issues and merge requests. If an issue/an MR is locked only team members can create new notes or edit the old ones. The users who are not team members can't add new comments or edit the old...## What does this MR do?
It supports locking issues and merge requests. If an issue/an MR is locked only team members can create new notes or edit the old ones. The users who are not team members can't add new comments or edit the old ones.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
requested more than a year ago
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [x] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [x] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #1860810.1Luke "Jared" BennettLuke "Jared" Bennetthttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14440Resolve "CDN support for PIWIK analytics platform"2017-09-27T20:50:48ZTim ZallmannResolve "CDN support for PIWIK analytics platform"## What does this MR do?
It makes our Piwik configuration compatible with deploying the piwik.js to a CDN.
There is now the new optional Configuration parameter `piwik_js_cdn_url`, which is only needed if you want to serve the Ja...## What does this MR do?
It makes our Piwik configuration compatible with deploying the piwik.js to a CDN.
There is now the new optional Configuration parameter `piwik_js_cdn_url`, which is only needed if you want to serve the Javascript file from a different location. Based on the following description : https://forum.piwik.org/t/loading-piwik-from-cdn/11565/4
## Are there points in the code the reviewer needs to double check?
Is anything else needed when adding a new configuration?
## Why was this MR needed?
So gitlab.com can even be faster
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #3816810.1Tim ZallmannTim Zallmannhttps://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14186WIP: Make it possible to send merge request across different forks2017-09-27T14:50:40ZBob Van Landuyt :neckbeard:WIP: Make it possible to send merge request across different forks## What does this MR do?
This MR makes it possible to send merge requests across forks multiple levels deep.
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog....## What does this MR do?
This MR makes it possible to send merge requests across forks multiple levels deep.
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] ~~API support added~~
- [x] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
## What are the relevant issue numbers?
Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/2009710.1Bob Van Landuyt :neckbeard:Bob Van Landuyt :neckbeard:https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14299WIP: Resolve "Repo Button: Back Button Not consistent"2017-09-26T12:23:47ZTim ZallmannWIP: Resolve "Repo Button: Back Button Not consistent"## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](htt...## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
Closes #3643610.1https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14404Disable strict mode in MySQL2017-09-21T07:08:16Zusername-removed-423915Disable strict mode in MySQL## What does this MR do?
Disable strict mode in MySQL
## Why was this MR needed?
Because otherwise it's breaking Rails 5. See: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/12841#note_40884022
There's also a failed attempt a...## What does this MR do?
Disable strict mode in MySQL
## Why was this MR needed?
Because otherwise it's breaking Rails 5. See: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/12841#note_40884022
There's also a failed attempt at: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14383
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [x] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- Review
- [ ] Has been reviewed by Database
## What are the relevant issue numbers?
https://gitlab.com/gitlab-org/gitlab-ce/issues/3537610.1username-removed-423915username-removed-423915https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14383Use now() as default timestamp for MySQL2017-09-21T04:59:54Zusername-removed-423915Use now() as default timestamp for MySQL## What does this MR do?
Use now() as default timestamp for MySQL
## Why was this MR needed?
This patch was originally from https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/13560 which tried to stop MySQL from using `CURRE...## What does this MR do?
Use now() as default timestamp for MySQL
## Why was this MR needed?
This patch was originally from https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/13560 which tried to stop MySQL from using `CURRENT_TIMESTAMP`. However, as it seems, on some MySQL version (e.g. 4.7) and under some configuration, `0` is not allowed.
We never intended to use the default value, so any value should be fine. However, `now()` is picked because there's some weird issue in `factory_girl` along with MySQL, which stops Rails auto-generating timestamps, causing it use the default. Use `now()` could somehow "fix" this issue when it happened.
## Does this MR meet the acceptance criteria?
- [x] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- Review
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
## What are the relevant issue numbers?
* https://gitlab.com/gitlab-org/gitlab-ce/issues/36405#note_40120201
* https://gitlab.com/gitlab-org/gitlab-ce/issues/35376#note_40588738
* https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/12841#note_4082958610.1username-removed-423915username-removed-423915https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14256WIP: Vueify image diff2017-09-20T22:37:28Zusername-removed-408677WIP: Vueify image diff## What does this MR do?
Convert image diff to use Vue as a first step towards https://gitlab.com/gitlab-org/gitlab-ce/issues/35873
This also fixes several existing bugs with current image diffs
- This MR consistently loads the `2-up` vi...## What does this MR do?
Convert image diff to use Vue as a first step towards https://gitlab.com/gitlab-org/gitlab-ce/issues/35873
This also fixes several existing bugs with current image diffs
- This MR consistently loads the `2-up` view correctly by default (#32613)
- This MR fixes the alignment issue for swipe frame (#37928)
## Are there points in the code the reviewer needs to double check?
Make sure everything is :100:
## Why was this MR needed?
Related to ~Deliverable
## Screenshots (if relevant)
| Before (Inconsistent 2-up) | After (Inconsistent 2-up) |
|---|---|
|![2017-09-15_12.01.34](/uploads/49b116b54fec14bf9e7d38507d2c0d0a/2017-09-15_12.01.34.gif)|![2017-09-15_11.57.22](/uploads/cb58bbaf1cff501ff92b0b509744848a/2017-09-15_11.57.22.gif)|
| Before (Swipe frame) | After (Swipe frame) |
|---|---|
|![Screen_Shot_2017-09-15_at_11.21.48_AM](/uploads/f46c827052a3543d8876f04c13ed2289/Screen_Shot_2017-09-15_at_11.21.48_AM.png)|![Screen_Shot_2017-09-15_at_11.21.09_AM](/uploads/b716fd26f10b31c27c7c382960d465d9/Screen_Shot_2017-09-15_at_11.21.09_AM.png)|
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [x] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
https://gitlab.com/gitlab-org/gitlab-ce/issues/35873,
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/32613,
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/3792810.1username-removed-408677username-removed-408677https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14309WIP: Comment image diff2017-09-19T21:30:21Zusername-removed-408677WIP: Comment image diff## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](htt...## What does this MR do?
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?
#3587310.1username-removed-408677username-removed-408677https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/13857lossless image optimization2017-09-19T18:28:02Zusername-removed-1118608lossless image optimization## What does this MR do?
optimize images
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
https://developers.google.com/speed/pagespeed/insights/?url=https%3...## What does this MR do?
optimize images
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
## Screenshots (if relevant)
https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fgitlab.com%2Fusers%2Fsign_in&tab=desktop
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ce/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?10.1username-removed-1118608username-removed-1118608https://staging.gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/14366Expose internal repository create method for gitaly2017-09-19T16:33:24ZJacob Vosmaer (GitLab)Expose internal repository create method for gitaly## What does this MR do?
Exposes part of Gitlab::Git::Repository.create for use inside gitaly-ruby.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
We need this internal method i...## What does this MR do?
Exposes part of Gitlab::Git::Repository.create for use inside gitaly-ruby.
## Are there points in the code the reviewer needs to double check?
## Why was this MR needed?
We need this internal method in https://gitlab.com/gitlab-org/gitaly/merge_requests/361.
## Screenshots (if relevant)
## Does this MR meet the acceptance criteria?
- [ ] [Changelog entry](https://docs.gitlab.com/ee/development/changelog.html) added, if necessary
- [ ] [Documentation created/updated](https://docs.gitlab.com/ee/development/doc_styleguide.html)
- [ ] API support added
- [ ] Tests added for this feature/bug
- Review
- [ ] Has been reviewed by UX
- [ ] Has been reviewed by Frontend
- [ ] Has been reviewed by Backend
- [ ] Has been reviewed by Database
- [ ] Conform by the [merge request performance guides](https://docs.gitlab.com/ee/development/merge_request_performance_guidelines.html)
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)
## What are the relevant issue numbers?10.1Jacob Vosmaer (GitLab)Jacob Vosmaer (GitLab)