Web IDE editor
See EPIC: gitlab-org&24
Editing more than a single file using the GitLab interface can feel laborious because each file must be edited one by one, requiring at least one commit for each edited file. This makes contributing larger changes multiple files, be they markdown or source code, through the GitLab interface difficult.
We want to make it easy for everyone to collaborate. Removing barriers will help people contribute more than fixes to typos and dead links, but allow people to contribute larger changes, offer more comprehensive code review suggestions and more.
The beta should be available as an alternative for the existing blob editor. It should be focussed on editing multiple text files with a single commit.
- Multi-file editor should allow multiple text files to opened, created, edited and committed as a single commit
- Multi-file editor should co-exist with existing blob viewer and editor, so that users of current interface are not impacted by limitations or performance problems with the new multi-file editor
- Multi-file editor should allow the user to view images
- Blob viewer gitlab-ce#38355 (closed)
- Multi-file editor should allow the user to see a list of the changed files staged for commit and add a commit message. The user should also be able to identify which lines have changed in those files
- Multi-file editor should allow the user to adjust the width of panels to suit the information within each panel and make the best use of their screen size
- Full width responsiveness (task gitlab-ce#40040 (closed))
- Multi-file editor should attempt to prevent users losing their work by navigating to a new page or closing the browser
- Show warning trying to close page without committing changes
- Multi-file editor should be consistent with GitLab visual language
- Performance and reliability
- Save changes to local storage gitlab-ce#40045
- Create branch when committing to a project with write permissions gitlab-ce#40942 (closed)
- Create fork when opening a project without write permissions gitlab-ce#38357 (closed)
- Fuzzy file finder
- Open all files from merge request gitlab-ce#40961 (closed)
- Popup dialog needs specs gitlab-ce#36376 (closed)
- DRY up Repo Editor HTML gitlab-ce#36522
blobURLtoParentTreeless brittle gitlab-ce#36364
commitFileserror handling gitlab-ce#36365
- Use proper markup in dropdown_input helper gitlab-ce#36370
- Remove root v-if's from repo components gitlab-ce#36493
- Remove deep watchers gitlab-ce#36494
- Refactor uses of Vue.nextTick to use returned promise and avoid nested callbacks gitlab-ce#36371
- Fill in or remove empty specs for editClicked gitlab-ce#36372
- Move branch-specific logic from gl_dropdown into repo editor gitlab-ce#36373
- Reset RepoStore before each test gitlab-ce#36462
- Expose proper entities in Repo Entity gitlab-ce#36037 (closed)
scrollTabsRightless fragile gitlab-ce#36362
- Don't rely on HTML to create whitespace in repo editor gitlab-ce#36356
- Re-design and refactor store logic & data flow through repo editor gitlab-ce#36357
- Break up makeCommit & write more tests gitlab-ce#36358
- Determine a better approach to method use and re-use than repo_helper gitlab-ce#36359
getLanguageIDForFileless brittle gitlab-ce#36360
- Break up
- gitlab-ce#36102 (closed)
Source: gitlab-ce#31890 (closed)
Links / references
There are users of GitLab who contributor exclusively through the web interface or occasionally through the web interface to commit changes to documentation, static sites, and even source code.
This feature will improve the experience of those existing users by making contributions to more than one file easier.
When web-only GitLab users want to make related edits to multiple files, they are obstructed by having to complete multiple manual steps that are separated by many screens.
Make sure these are completed before closing the issue, with a link to the relevant commit.