@@ -105,11 +105,82 @@ Branch completion (Tab) works for:
105105- ` gwt add <path> <TAB> `
106106- ` gwt add <path> -f <TAB> `
107107
108+ ## Not merged branch helpers
109+
110+ Quick branch visibility shortcuts:
111+
112+ - ` gbnmd [base-branch] ` -> ` git branch --no-merged <base-branch> --sort=-committerdate ` (default base: ` develop ` )
113+ - ` gbnmdr [base-branch] ` -> same command with ` -r ` (remote branches only)
114+ - ` gbnmdi [base-branch] ` -> interactive branch browser (arrow keys + Enter)
115+ - ` gbsc ` -> ` git branch --show-current `
116+
117+ Date-filtered helper:
118+
119+ ``` powershell
120+ Get-BranchesNotMergedToDevelop `
121+ [-Since <datetime>] `
122+ [-LastDays <int>] `
123+ [-BaseBranch <string>] `
124+ [-RemoteOnly]
125+ ```
126+
127+ Detailed metadata helper:
128+
129+ ``` powershell
130+ Get-BranchesNotMergedToDevelopDetails `
131+ [-Since <datetime>] `
132+ [-LastDays <int>] `
133+ [-BaseBranch <string>] `
134+ [-RemoteOnly] `
135+ [-MaxFiles <int>]
136+ ```
137+
138+ Notes:
139+ - if ` -Since ` is omitted and ` -LastDays ` is ` 0 ` , filtering starts from today (` (Get-Date).Date ` );
140+ - if ` -Since ` is omitted and ` -LastDays ` is greater than ` 0 ` , filtering starts from ` today - LastDays ` ;
141+ - no checkout/switch is performed; everything is computed from refs and diffs;
142+ - detailed output fields: ` Date ` , ` Branch ` , ` Author ` , ` Commits ` , ` Insertions ` , ` Deletions ` , ` Files ` , ` FilesPreview ` .
143+
144+ Examples:
145+
146+ ``` powershell
147+ # Since today
148+ Get-BranchesNotMergedToDevelop
149+
150+ # Since specific date/time
151+ Get-BranchesNotMergedToDevelop -Since '2026-03-12'
152+ Get-BranchesNotMergedToDevelop -Since '2026-03-12 15:30'
153+
154+ # Last 3 days
155+ Get-BranchesNotMergedToDevelop -LastDays 3
156+
157+ # Remote only
158+ Get-BranchesNotMergedToDevelop -Since '2026-03-12' -RemoteOnly
159+
160+ # Shortcut alias
161+ gbnms -LastDays 7 | Sort-Object Date -Descending
162+
163+ # Detailed table with author/commit/stats and truncated file list
164+ gbnmd -Detailed -Since '2026-03-12' -MaxFiles 5 |
165+ Format-Table -AutoSize
166+
167+ # Interactive mode (arrows + Enter)
168+ # View modes: Commits (default), Changes, Patch
169+ gbnmd -Interactive -View Commits
170+ gbnmdr -Interactive -View Changes
171+ gbnmdi -View Patch
172+ ```
173+
108174## Aliases
109175
110176| Alias | Command | Source |
111177| :---- | :------ | :----- |
112178| gapt | git apply --3way @args | extra |
179+ | gbnmd | Show local branches not merged into ` <base-branch> ` (default ` develop ` ); supports ` -Detailed ` and ` -Interactive ` . | extra |
180+ | gbnmdr | Show remote branches (` -r ` ) not merged into ` <base-branch> ` (default ` develop ` ); supports ` -Detailed ` and ` -Interactive ` . | extra |
181+ | gbnmdi | Interactive branch browser for not-merged branches (`-View Commits| Changes| Patch` , ` -RemoteOnly` supported). | extra |
182+ | gbnms | Alias -> Get-BranchesNotMergedToDevelop | extra |
183+ | gbsc | git branch --show-current @args | extra |
113184| gccd | param([ Parameter(ValueFromRemainingArguments=$true)] [ string[ ]] $rest) <br > git clone --recurse-submodules @rest <br > $last = if ($rest.Count) { $rest[ -1] } else { '' } <br > if ($last -match '\. git$') { $last = $last -replace '\. git$','' } <br > if ($last) { <br > $dirName = Split-Path $last -Leaf <br > if (Test-Path $dirName) { <br > Set-Location $dirName <br > } <br > } | extra |
114185| gcor | git checkout --recurse-submodules @args | extra |
115186| gdct | git describe --tags (git rev-list --tags --max-count=1) | extra |
0 commit comments