[go: up one dir, main page]

Skip to content

Refactor OperationService#commit_files into smaller methods, and handle arguments list more concisely

Summary

The OperationService#user_commit_files method is quite lengthy (65 lines) and has an extensive argument list (Metrics/ParameterLists is disabled).

Improvements

One approach is suggested here.

In short, splitting the method into a few smaller methods, and refactoring the arguments list into commit settings/details objects.

There is also some upstream code that could be changed Models::Repository#commit_files accepts a hash of options that could also use commit settings/details objects. This might be a huge change though, as Models::Repository#commit_files is called from a number of places.

Edited by Fred Reinink