Skip to content

Commit 0e06922

Browse files
authored
Update version.md for 'main' branch
1 parent 6c6a940 commit 0e06922

File tree

1 file changed

+28
-31
lines changed

1 file changed

+28
-31
lines changed

documentation_en/developers/version.md

Lines changed: 28 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -12,82 +12,79 @@ Route Graph Generator and PGRouting Procedures are independent as GIT projects.
1212

1313
## Branches
1414

15-
On these three projects have a `master` and `develop` branch. The first allows you to manage the versions put into production. The second makes it possible to carry out the developments.
15+
These three projects have a `main` branch. The production versions are managed via releases created from tags made on this branch.
1616

17-
We will make sure to start from `develop` and create a branch like this:
17+
We will make sure to start from `main` and create a branch like this:
1818
- `doc/*` to modify or add documentation only,
1919
- `feat/*` to create new features,
2020
- `fix/*` to make a correction to the source code,
2121
- `docker/*` to modify the docker part only,
2222
- `test/*` to modify only the tests,
2323
- `ci/*` to modify the Github CI
2424

25-
To merge a branch with `develop`, we will make sure to have done a rebase of develop on this branch. And on the merge method, we will do a squash. So, the `develop` branch will have one commit per feature, fix, etc...
25+
To merge a branch with `main`, we will make sure to have done a rebase of develop on this branch. And on the merge method, we will do a squash. So, the `main` branch will have one commit per feature, fix, etc...
2626

2727

2828
## Versions and tags
2929

30-
It is assumed that versions are managed on the `master` and `develop` branches of the various projects. And it is for these branches that we will explain how to maintain versions and tags.
30+
It is assumed that versions are managed on the `main` branch of the various projects. And it is for this branch that we will explain how to maintain versions and tags.
3131

3232
### General
3333

34-
Each project will have, on the `develop` branch, a higher version than the one present on `master`; as well as the mention `-DEVELOP`.
34+
Each project will have, on the `main` branch, a higher version than the last release version; as well as the mention `-BETA`.
3535

3636
For example, we will make sure to always have, for each project, a state similar to the following:
37-
- `master` branch: 1.0.0
38-
- `develop` branch: 1.0.1-DEVELOP
37+
- last release: 1.0.0
38+
- `main` branch: 1.0.1-BETA
3939

40-
We will make sure to tag the commits of each project with the right versions. And this on the `master` branch mostly. This is useful for two reasons:
40+
We will make sure to tag the commits of each project with the right versions. This is useful for two reasons:
4141
- We must be able to identify, by the tags, the versions of the code used in production.
42-
- We must be able to make all the projects work together from the tags on `master` and `develop`.
43-
44-
When we merge `develop` on `master`, we will take care not to squash in order to facilitate future merges (as recommended by [github](https://docs.github.com/fr/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#squashing-and-merging-a-long-running-branch)).
42+
- We must be able to make all the projects work together from the tags on `main`.
4543

4644
### PGRouting Procedures and Route Graph Generator
4745

4846
It is advisable to start by managing the versions of these two. *The following describes the process for updating projects, but without going through the GIT* submodules. If you want to use submodules, you can refer to the documentation [proposed by GIT](https://git-scm.com/book/en/v2/Git-Tools-Submodules).
4947

5048
Initial state for each project:
5149

52-
- `master` branch: 1.0.0
53-
- `develop` branch: 1.0.1-DEVELOP
50+
- last release: 1.0.0
51+
- `main` branch: 1.0.1-BETA
5452

5553
Steps to follow for each project:
5654

57-
1. Test `develop` and correct if necessary.
58-
2. Update version on `develop` to 1.0.1.
59-
3. Merge of `develop` on `master`.
60-
4. Update version on `develop` to 1.0.2-DEVELOP.
61-
5. Run tests on `master` and correct if necessary.
62-
6. If there were fixes on `master`, then merge `master` on `develop` and start over at 1. changing the version number.
55+
1. Test `main` and correct if necessary.
56+
2. Update version on `main` to 1.0.1.
57+
3. Create tag 1.0.1
58+
4. Update version on `main` to 1.0.2-BETA.
59+
5. Run tests on 1.0.1 and correct if necessary.
60+
6. If there were fixes, start over at 1. changing the version number. Else, publish a release from the 1.0.1 tag.
6361

6462
### Road2
6563

6664
Road2 depends on the other two. This leads to subtleties.
6765

6866
Initial state for each project:
6967

70-
- `master` branch: 1.0.0
71-
- `develop` branch: 1.0.1-DEVELOP
68+
- last release: 1.0.0
69+
- `main` branch: 1.0.1-BETA
7270

7371
Procedure for Road2:
7472

7573
0. Perform version upgrades and merges on Route Graph Generator and PGRouting Procedures.
76-
1. Test `develop` with the `develop` of other projects, and correct if necessary.
77-
2. Update version on `develop` to 1.0.1.
78-
3. Merge of `develop` on `master`.
79-
4. Update version on `develop` to 1.0.2-DEVELOP.
80-
5. Do tests on `master` with the `master` of other projects, and correct if necessary.
81-
6. If there were fixes on `master`, then merge `master` on `develop` and start over at 1. changing the version number.
82-
7. If there were no corrections on `master`, and we have the `master` and the `develop` of the three projects that work together, then tag `master` and `develop` with the versions, on each project.
74+
1. Test `main` with the `main` of other projects, and correct if necessary.
75+
2. Update version on `main` to 1.0.1.
76+
3. Create tag 1.0.1
77+
4. Update version on `main` to 1.0.2-BETA.
78+
5. Run tests on 1.0.1 and correct if necessary.
79+
6. If there were fixes, start over at 1. changing the version number. Else, publish a release from the 1.0.1 tag.
8380

8481
### Submodule management
8582

86-
Currently, Road2 uses PGRouting Procedures and Route Graph Generator to build the various docker images that allow testing and developing the service. The version used in Road2 on its `master` and `develop` branch is *a specific commit* of the `master` of each submodule.
83+
Currently, Road2 uses PGRouting Procedures and Route Graph Generator to build the various docker images that allow testing and developing the service. The version used in Road2 on its `main` branch is *a specific commit* of the `main` of each submodule.
8784

8885
To point to a more recent commit, we will follow the following procedure:
89-
- go to the `develop` branch of Road2
86+
- create a branch from the `main` branch of Road2
9087
- at the root of the project, run the command `git submodule update --remote`
9188
- make the commit of this reference change
92-
- merge `develop` on `master`
89+
- create a PR for the update on `main`
9390

0 commit comments

Comments
 (0)