Skip to content

Use current commit SHA when requesting IDE file tree and contents

Himanshu Kapoor requested to merge 29451-webide-currentsha into master

What does this MR do?

Use the commit SHA instead of the branch ID to request data for the file tree and raw files in the IDE. The SHA is obtained as the most recent commit in the branch at the moment the branch is first loaded, then remains the same until the branch is changed or the window is refreshed. This is done to prevent unusual file behaviour that could occur if another user edits the files while the IDE is open.

This is a fix for issue #29451 (closed) and #30929 (closed) (since both depend on each other).

For #30929 (closed), I did this:

When a renamed file is loaded in the WebIDE, an error occurs. WebIDE doesn't handle renamed files when loading diffs. I added a case to fetch the file by its old path in MR's history so that the diff loads fine.

Screenshots

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • Label as security and @ mention @gitlab-com/gl-security/appsec
  • The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • Security reports checked/validated by a reviewer from the AppSec team
Edited by Himanshu Kapoor

Merge request reports