Skip to content

Commit 9a8c167

Browse files
Update README.md
add new release strategy + contribution guideline
1 parent 097b394 commit 9a8c167

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed

README.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,69 @@ For applying filters and other more advanced configuration check the official do
2929

3030
Both TestNG and JUnit are supported.
3131

32+
## Release Strategy
33+
34+
### Versioning
35+
Our project uses [Semantic Versioning](https://semver.org/) (SemVer) for clear and predictable version management. Each release is tagged with a unique version number that reflects the nature of the changes made.
36+
### Tags and Releases
37+
- **Tags:** We create Git tags for each release to mark specific points in the project's history, making it easier for users to switch between versions.
38+
- **Release Notes:** Detailed notes accompany [each release](https://bellatrix.solutions/roadmap/release-3-9-0-0-lyra/), highlighting new features, bug fixes, and any breaking changes.
39+
### Accessing Releases
40+
Users can access the specific releases directly from our GitHub repository's Releases page or BELLATRIX website's roadmap section. Each release includes a tag, a summary of changes, and assets (if applicable).
41+
## Integrating BELLATRIX as a Submodule in Your Project
42+
### Adding BELLATRIX as a Submodule
43+
To leverage a specific version of BELLATRIX in your project, you can add it as a Git submodule. This allows you to keep your copy of BELLATRIX up to date or locked to a specific version, depending on your project's needs.
44+
1. **Navigate to Your Project Directory:** Open a terminal and change to the directory where your project is located.
45+
2. **Add BELLATRIX as a Submodule:** Use the following Git command to add BELLATRIX as a submodule to your project:
46+
```
47+
git submodule add https://github.com/BELLATRIX-Library/BELLATRIX.git path/to/submodule
48+
```
49+
Replace `path/to/submodule` with the relative path within your project where you'd like the BELLATRIX submodule to reside.
50+
**Initialize and Clone the Submodule:** If you're adding the submodule for the first time, initialize your local configuration file and clone the BELLATRIX repository as follows:
51+
```
52+
git submodule update --init --recursive
53+
```
54+
### Checking Out a Specific Tag (Release Version)
55+
After adding BELLATRIX as a submodule, you might want to use a specific release version rather than the latest commit on the main branch.
56+
1. **Navigate to the Submodule Directory:** Change into the BELLATRIX submodule directory within your project:
57+
```
58+
cd path/to/submodule
59+
```
60+
1. **Fetch All Tags from the BELLATRIX Repository:** To ensure you have a list of all available tags, fetch them:
61+
```
62+
git fetch --tags
63+
```
64+
2. **Checkout the Desired Tag:** Check out the specific tag (release version) you want to use by replacing `<tagname>` with the desired version:
65+
```
66+
git checkout tags/<tagname>`
67+
```
68+
For example, if you want to check out version `v3.9.0.0`, you would use:
69+
```git checkout tags/v3.9.0.0```
70+
71+
3. **Commit the Submodule Change:** Navigate back to your project's root directory, and commit the change to the submodule reference:
72+
```
73+
cd ../..
74+
git add path/to/submodule
75+
git commit -m "Update BELLATRIX submodule to v3.9.0.0"
76+
```
77+
This process ensures that your project uses a specific, fixed version of BELLATRIX, providing stability and consistency across environments or deployments.
78+
## Contributing to Our Project
79+
We welcome contributions from the community, whether it's in the form of bug reports, feature requests, documentation improvements, or code contributions.
80+
### Getting Started
81+
1. **Fork the Repository:** Start by forking the repository to your GitHub account. This provides you with a personal workspace for making changes.
82+
2. **Clone Your Fork:** Clone your fork to your local machine to start working on the changes.
83+
### Making Changes
84+
1. **Create a Feature Branch:** From your fork, create a new branch for your work. This keeps your changes organized and separate from the main branch.
85+
2. **Commit Your Changes:** Make your changes locally, and commit them to your feature branch. Use clear and descriptive commit messages.
86+
### Submitting Contributions
87+
1. **Pull from Upstream:** Before submitting your contribution, pull the latest changes from the upstream main branch into your feature branch to minimize merge conflicts.
88+
2. **Push to Your Fork:** Push your changes to your fork on GitHub.
89+
3. **Open a Pull Request (PR):** Submit a pull request from your feature branch to the main branch of the original repository. Provide a clear description of your changes and any relevant issue numbers.
90+
### Code Review
91+
**Review Process:** Your PR will be reviewed by the project maintainers. They may provide feedback or request changes. Be open to discussion and willing to make adjustments as needed.
92+
### After Your PR is Merged
93+
Once your PR is merged, your contributions will become part of the project. You can then safely delete your feature branch.
94+
3295
Supported Code Editors
3396
----------------------
3497
The recommended code editor for writing BELLATRIX tests is IntelliJ

0 commit comments

Comments
 (0)