diff --git a/CHANGELOG.md b/CHANGELOG.md
index f9eab5c..81aac42 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [0.3.0] - 2026-06-25
+
+### Added
+
+- **Porcelain `commit` command:** Added high-level `commit` command bridging the gap from plumbing to porcelain.
+- **Refs Management:** Implemented branch pointer mutation and HEAD resolution.
+- **Configurable Author:** Modified `commit` logic to read author and committer data from the `.git/config` file.
+
## [0.2.0] - 2026-06-24
### Added
diff --git a/Cargo.lock b/Cargo.lock
index d221598..0be7398 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -252,7 +252,7 @@ dependencies = [
[[package]]
name = "git-rs"
-version = "0.2.0"
+version = "0.3.0"
dependencies = [
"anyhow",
"assert_cmd",
diff --git a/Cargo.toml b/Cargo.toml
index 9c0f7d2..4a8d045 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "git-rs"
-version = "0.2.0"
+version = "0.3.0"
edition = "2021"
authors = ["Fady Philip "]
description = "A from-scratch implementation of Git's core object storage engine in Rust."
diff --git a/README.md b/README.md
index 31722f0..e0b2a67 100644
--- a/README.md
+++ b/README.md
@@ -15,7 +15,7 @@
-
+
diff --git a/docs/04_commit_object_and_commit_tree.md b/docs/04_commit_object_and_commit_tree.md
index f6de66d..55b643f 100644
--- a/docs/04_commit_object_and_commit_tree.md
+++ b/docs/04_commit_object_and_commit_tree.md
@@ -242,7 +242,7 @@ graph LR
E --> F["History (DAG)"]
```
-The `commit-tree` command in `git-rs` currently uses hardcoded author/committer information for simplicity. In Phase 5, this will be configurable through Git's standard configuration mechanism (user.name, user.email) or environment variables.
+The `commit-tree` command in `git-rs` used hardcoded author/committer information for simplicity in Phase 4. In Phase 5, this is configurable through Git's standard configuration mechanism (user.name, user.email).
---
diff --git a/docs/05_dag_and_commit_serialization.md b/docs/05_dag_and_commit_serialization.md
index 5b87437..0f7a2da 100644
--- a/docs/05_dag_and_commit_serialization.md
+++ b/docs/05_dag_and_commit_serialization.md
@@ -276,7 +276,7 @@ Fady 1718000000 +0000
| Cherry-pick | Alice (original author) | Bob (performed the cherry-pick) |
| Rebase | Alice (original author) | Bob (performed the rebase) |
-In `git-rs` Phase 4, author and committer are identical for simplicity. Phase 5 will support reading these from Git configuration or environment variables.
+In `git-rs` Phase 4, author and committer are identical for simplicity. Phase 5 supports reading these from Git configuration.
---
@@ -309,7 +309,7 @@ Even though there are 3 commits, `blob-a` and `blob-c` are each stored only once
The `commit-tree` command in `git-rs` implements the following:
1. **Parses arguments** (tree hash, `-m` flag, message)
-2. **Constructs a Commit struct** with hardcoded author info (Phase 5 will make this configurable)
+2. **Constructs a Commit struct** with hardcoded author info (Phase 5 makes this configurable)
3. **Generates timestamp** using Unix epoch seconds
4. **Serializes the commit** to text with proper line endings
5. **Calls `write_object("commit", ...)`** to hash, compress, store, and return the hash