Skip to content

Feat/docs fork update [ROBO-3587] #35

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: uipath
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 22 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,31 @@
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` |

#### 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.

❗The state before the update must be saved in a support branch, named `robot/support/before_update_to_<NEW BASE GIT TAG>`, where `<NEW BASE GIT TAG>` is the tag from the original repo onto which we'll rebase our changes.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this branch naming ok? @mihainradu ?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was suggesting more of using the FreeRDP version, and we would have to bump the major at every upgrade, which sounds ok.


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
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This git fetch is for the purpose of retrieving tags from the original FreeRDP repo. Nowhere is it specified to add that remote (and if we just clone our repo we won't have it)

git push --tags
```

A work branch should be created from `uipath` and used in the validation phase. Its name would be `feat/update_to_<NEW BASE GIT TAG>`.
After checking out the branch, the rebase should be performed using the following command:
```pwsh
git rebase --onto <NEW BASE Git Tag> <Our 1st customization Commit's Hash> <The work branch>
Copy link
Collaborator Author

@eduard-dumitru eduard-dumitru Feb 1, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@daniel-stanciu, any thoughts on the following?:

The git rebase --onto command causes the currently checked out branch to be reset to whatever the 3 arguments dictate. <The work branch> could very well be replaced with uipath, since it's assumed is equal to it.

That would make this command description more robust to changes to the lines before it.

```
In this phase we have the opportunity the review the new state, run CI/CD and fix any issues that might arise.

After validating the `feat/update_to_<NEW BASE GIT TAG>` branch, reset the `uipath` branch to it and force push it.

### Build instructions
* Visual Studio 2022 installed in `C:\Program Files` required.
Expand Down