DevOps / GIT Interview Questions
What is the difference between a GIT tag and a branch?
In Git, both branches and tags are pointers to specific commits, but they serve different roles in the development lifecycle.
| Feature | Branch | Tag |
|---|---|---|
| Purpose | Used for active development (features, bug fixes). | Used to mark milestones (releases, version numbers). |
| Movement | Mutable: The pointer moves forward automatically when you add new commits. | Immutable: Once set, it stays on that specific commit forever (unless manually forced to move). |
| Lifecycle | Usually temporary; deleted after merging into the main line. | Usually permanent; kept for historical reference to specific software versions. |
| Storage | Located in .git/refs/heads/. | Located in .git/refs/tags/. |
When to Use Which?
Use a Branch if you intend to add more commits to that line of work. Use a Tag if you want to "freeze" a version so you can return to that exact code state later, regardless of future development.
More Related questions...