From 1dc43af6ff9357724264ba9e9185d1c6a01bd58c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andre=CC=81=20Lui=CC=81s?= Date: Mon, 26 Mar 2018 17:46:03 +0000 Subject: Add doc about backporting changes from EE to CE --- doc/development/ee_features.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'doc/development') diff --git a/doc/development/ee_features.md b/doc/development/ee_features.md index fea92e740cb..e474849e4a5 100644 --- a/doc/development/ee_features.md +++ b/doc/development/ee_features.md @@ -375,6 +375,7 @@ information on managing page-specific javascript within EE. To separate EE-specific styles in SCSS files, if a component you're adding styles for is limited to only EE, it is better to have a separate SCSS file in appropriate directory within `app/assets/stylesheets`. +See [backporting changes](#backporting-changes) for instructions on how to merge changes safely. In some cases, this is not entirely possible or creating dedicated SCSS file is an overkill, e.g. a text style of some component is different for EE. In such cases, @@ -413,6 +414,19 @@ to avoid conflicts during CE to EE merge. } ``` +### Backporting changes from EE to CE + +When working in EE-specific features, you might have to tweak a few files that are not EE-specific. Here is a workflow to make sure those changes end up backported safely into CE too. +(This approach does not refer to changes introduced via [csslab](https://gitlab.com/gitlab-org/csslab/).) + +1. **Make your changes in the EE branch.** If possible, keep a separated commit (to be squashed) to help backporting and review. +1. **Open merge request to EE project.** +1. **Apply the changes you made to CE files in a branch of the CE project.** (Tip: Use `patch` with the diff from your commit in EE branch) +1. **Open merge request to CE project**, referring it's a backport of EE changes and link to MR open in EE. +1. Once EE MR is merged, the MR towards CE can be merged. **But not before**. + +**Note:** regarding SCSS, make sure the files living outside `/ee/` don't diverge between CE and EE projects. + ## gitlab-svgs Conflicts in `app/assets/images/icons.json` or `app/assets/images/icons.svg` can -- cgit v1.2.1