Git & GitHub
/Advanced
Release Management
Definition
The process of managing, planning, scheduling, and controlling a software build through different stages and environments (Development, Staging, Production).
Explain Like I'm New
You don't just push code straight to the public. You push it to 'Development'. Then you move it to 'Staging' (a fake environment that looks exactly like the real website) so the QA team can test it. Finally, you 'Release' it to Production.
Real World Example
Creating a 'Release' on GitHub, attaching compiled `.exe` files, writing release notes, and notifying users that Version 2.0 is available.
Common Use Cases
- •Enterprise software lifecycle
- •Mobile App store submissions
Terminal Output
bash / terminal
/*
How to create an official Release on GitHub:
1. Go to your repository main page.
2. On the right sidebar, click 'Releases'.
3. Click 'Draft a new release'.
4. Create a new Tag (e.g., v1.2.0).
5. Click 'Generate release notes' to auto-fill the description
with all the Pull Requests merged since the last release.
6. Drag and drop any compiled assets (like an installer or PDF).
7. Click Publish!
*/
Interview Questions
basic
- What GitHub feature allows you to attach compiled binaries (like a Windows `.exe` installer) to a specific version tag?
intermediate
- What is Semantic Versioning (SemVer)?