fern-git-status is a fern.vim plugin to add git status on node's badge asynchronously like:
Just install the plugin and visit a git repository which has some dirty status.
The plugin shows status of nodes as short format of git status like:
X Y Meaning
-------------------------------------------------
[AMD] not updated
M [ MD] updated in index
A [ MD] added to index
D deleted from index
R [ MD] renamed in index
C [ MD] copied in index
[MARC] index and work tree matches
[ MARC] M work tree changed since index
[ MARC] D deleted in work tree
[ D] R renamed in work tree
[ D] C copied in work tree
-------------------------------------------------
D D unmerged, both deleted
A U unmerged, added by us
U D unmerged, deleted by them
U A unmerged, added by them
D U unmerged, deleted by us
A A unmerged, both added
U U unmerged, both modified
-------------------------------------------------
? ? untracked
! ! ignored
-------------------------------------------------
The status of directory indicates that the directory contains index (left) or work tree (right) changes.
For example, single -
on right side means that the directory contains some work tree changes but index changes.
See :help fern-git-status-highlight
to customize the colors.
Disable the following options one by one if you encounter performance issues.
" Disable listing ignored files/directories
let g:fern_git_status#disable_ignored = 1
" Disable listing untracked files
let g:fern_git_status#disable_untracked = 1
" Disable listing status of submodules
let g:fern_git_status#disable_submodules = 1
" Disable listing status of directories
let g:fern_git_status#disable_directories = 1
🚀 For large repositories it is also recommended to enable the Git (2.24+) manyFiles feature in the working directory as follows:
git config feature.manyFiles true
- fern-mapping-git.vim - Add git related mappings