From 10aee05d63c6a086e15cbe8572c4cab8e180badb Mon Sep 17 00:00:00 2001 From: Eduard Dumitru Date: Tue, 16 Jan 2024 12:12:15 +0100 Subject: [PATCH 1/5] Update README.md --- README.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/README.md b/README.md index 55bef4689fca..f7d9cf7d78b3 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,32 @@ From time to time there is a need to merge the changes from the original repo in | --- | --- | |**Original corresponding commit hash:**| `d50aef95520df4216c638495a6049125c00742cb` | +## Update Guide + +- consider the new Base Git Tag from the official repo onto which we'll rebase our changes + + > **NOTE** For simplicity, let's consider `2.11.2` is the tag we want to rebase onto. + +- sync our fork to include that Git Tag. On local, after cloning UiPath/FreeRdp, execute the following: + + ```pwsh + git fetch --tags --all # this will fetch all tags from all upstreams, including from FreeRdp/FreeRdp + git push --tags # this will push the new tags to UiPath/FreeRdp + ``` +- checkout the `uipath` branch +- ‼️ create a new branch to backup the current state (i.e. `support/before_update_to_2_11_2`) +- create **and checkout** a new branch that will be used as a work branch (i.e. `feat/update_to_2_11_2`) + +- identify the Commit Hash, which is the parent of our 1st customization Commit + + > **NOTE** At the time of writing, our 1st customization Commit's message's 1st line is `Add uipath changes from previous version (2.0.0-rc3)` + +- Make sure you've checked out the work branch (i.e. `feat/update_to_2_11_2), and run **git rebase --onto**, so that all UiPath customization commits are replayed onto the new Base Git Tag: + + ```pwsh + git rebase --onto + ``` + ### Build instructions * Visual Studio 2022 installed in `C:\Program Files` required. From e63aa910c4004b17f279e74b2c1e1f06eeb50923 Mon Sep 17 00:00:00 2001 From: Eduard Dumitru Date: Tue, 16 Jan 2024 12:20:47 +0100 Subject: [PATCH 2/5] Update README.md --- README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f7d9cf7d78b3..6b4b83cd62f5 100644 --- a/README.md +++ b/README.md @@ -22,8 +22,16 @@ From time to time there is a need to merge the changes from the original repo in git push --tags # this will push the new tags to UiPath/FreeRdp ``` - checkout the `uipath` branch -- ‼️ create a new branch to backup the current state (i.e. `support/before_update_to_2_11_2`) +- ‼️ create a new support branch with the name format + + ``` + robot/support/before_update_to_ + ``` + (i.e. `robot/support/before_update_to_2_11_2`) + - create **and checkout** a new branch that will be used as a work branch (i.e. `feat/update_to_2_11_2`) + + > **NOTE** Right at this instant, this and the support branch should point to the same Git Commit as the `uipath` branch. - identify the Commit Hash, which is the parent of our 1st customization Commit From 8605b252270a0f6e0d4f4c0523cd5ce8d2a4abf2 Mon Sep 17 00:00:00 2001 From: Eduard Dumitru Date: Wed, 31 Jan 2024 15:11:08 +0100 Subject: [PATCH 3/5] fixes after review --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 6b4b83cd62f5..a95286de7b42 100644 --- a/README.md +++ b/README.md @@ -3,13 +3,13 @@ This repo forks the FreeRDP repo, thus allowing us to make changes that fit our needs and augment the codebase with other components. From time to time there is a need to merge the changes from the original repo into this one. -### ❗When updating the FreeRDP library from the official repo, please update the following in this file (README.md): +### ❗When updating the FreeRDP library from the official repo, please update the following table in this file (README.md): -|**Original repository tag/branch used:**| `2.5.0` | +|**Original repository tag/branch used:**| `2.11.2` | | --- | --- | -|**Original corresponding commit hash:**| `d50aef95520df4216c638495a6049125c00742cb` | +|**Original corresponding commit hash:**| `a38c1be9eee39a9bc22b511fffe96e63fdf8ebe7` | -## Update Guide +## Steps for performing the update - consider the new Base Git Tag from the official repo onto which we'll rebase our changes From 6e974909d41a18ca1f0251488d2a3a8c324ea3f5 Mon Sep 17 00:00:00 2001 From: Eduard Florin Dumitru Date: Thu, 1 Feb 2024 14:17:35 +0100 Subject: [PATCH 4/5] make the update process more descriptive and less instructional --- README.md | 44 ++++++++++++++------------------------------ 1 file changed, 14 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index a95286de7b42..0a7c45b9e194 100644 --- a/README.md +++ b/README.md @@ -9,40 +9,24 @@ From time to time there is a need to merge the changes from the original repo in | --- | --- | |**Original corresponding commit hash:**| `a38c1be9eee39a9bc22b511fffe96e63fdf8ebe7` | -## Steps for performing the update +#### Updating the fork is done on a dev machine and involves rebasing our changes on top of the new tag/branch from the original repo and **force pushing** the `uipath` branch. -- consider the new Base Git Tag from the official repo onto which we'll rebase our changes - - > **NOTE** For simplicity, let's consider `2.11.2` is the tag we want to rebase onto. - -- sync our fork to include that Git Tag. On local, after cloning UiPath/FreeRdp, execute the following: +❗The state before the update must be saved in a support branch, named `robot/support/before_update_to_`, where `` is the tag from the original repo onto which we'll rebase our changes. - ```pwsh - git fetch --tags --all # this will fetch all tags from all upstreams, including from FreeRdp/FreeRdp - git push --tags # this will push the new tags to UiPath/FreeRdp - ``` -- checkout the `uipath` branch -- ‼️ create a new support branch with the name format - - ``` - robot/support/before_update_to_ - ``` - (i.e. `robot/support/before_update_to_2_11_2`) - -- create **and checkout** a new branch that will be used as a work branch (i.e. `feat/update_to_2_11_2`) - - > **NOTE** Right at this instant, this and the support branch should point to the same Git Commit as the `uipath` branch. - -- identify the Commit Hash, which is the parent of our 1st customization Commit - - > **NOTE** At the time of writing, our 1st customization Commit's message's 1st line is `Add uipath changes from previous version (2.0.0-rc3)` - -- Make sure you've checked out the work branch (i.e. `feat/update_to_2_11_2), and run **git rebase --onto**, so that all UiPath customization commits are replayed onto the new Base Git Tag: +The tags from the original repo must be fetched from the original repo and pushed to our fork: +```pwsh +git fetch --tags --all +git push --tags +``` - ```pwsh - git rebase --onto - ``` +A work branch should be created from `uipath` and used in the validation phase. It's name would be `feat/update_to_`. +After checking out the branch, the rebase should be performed using the following command: +```pwsh +git rebase --onto +``` +In this phase we have the opportunity the review the new state, run CI/CD and fix any issues that might arise. +After the validation phase, the `uipath` branch should point to the work branch's HEAD and be **force pushed** to our fork. ### Build instructions * Visual Studio 2022 installed in `C:\Program Files` required. From 87c8863c0b7a0be36aa416e25e17cc5af7170382 Mon Sep 17 00:00:00 2001 From: Eduard Florin Dumitru Date: Mon, 4 Mar 2024 20:50:00 +0100 Subject: [PATCH 5/5] fixes after review --- README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0a7c45b9e194..2158548d19d2 100644 --- a/README.md +++ b/README.md @@ -15,18 +15,19 @@ From time to time there is a need to merge the changes from the original repo in The tags from the original repo must be fetched from the original repo and pushed to our fork: ```pwsh +git remote add upstream https://github.com/FreeRDP/FreeRDP.git git fetch --tags --all git push --tags ``` -A work branch should be created from `uipath` and used in the validation phase. It's name would be `feat/update_to_`. +A work branch should be created from `uipath` and used in the validation phase. Its name would be `feat/update_to_`. After checking out the branch, the rebase should be performed using the following command: ```pwsh git rebase --onto ``` In this phase we have the opportunity the review the new state, run CI/CD and fix any issues that might arise. -After the validation phase, the `uipath` branch should point to the work branch's HEAD and be **force pushed** to our fork. +After validating the `feat/update_to_` branch, reset the `uipath` branch to it and force push it. ### Build instructions * Visual Studio 2022 installed in `C:\Program Files` required.