GitSelectBranch is a Neovim plugin designed to enhance your Git workflow. It integrates with Telescope.nvim to allow users to seamlessly list, switch to, or create Git branches directly within Neovim. Keyboard shortcut <leader>gb
also comes as default.
![Screenshot 2024-04-13 at 17 52 26](https://private-user-images.githubusercontent.com/327855/322219898-e4670f7a-2484-4893-912d-2136201b2f62.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg4NTEwMzUsIm5iZiI6MTczODg1MDczNSwicGF0aCI6Ii8zMjc4NTUvMzIyMjE5ODk4LWU0NjcwZjdhLTI0ODQtNDg5My05MTJkLTIxMzYyMDFiMmY2Mi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwNlQxNDA1MzVaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT05YjhkZWU4NzMxNGM4M2YwNTM3ZTFkOWVhYjE0ODk1ZGNmMzhlZTBhNDhiMTU3YmU1MjY4ZjBiYWNiNDM3YjNiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.8g8vvwcXViwdk6HZEE2SxNfAwgYeFA9pQ3Pf9bIpPwA)
![Screenshot 2024-04-13 at 17 54 16](https://private-user-images.githubusercontent.com/327855/322219905-617ae5ad-f8f2-4ffb-9ba2-000b5fa65001.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg4NTEwMzUsIm5iZiI6MTczODg1MDczNSwicGF0aCI6Ii8zMjc4NTUvMzIyMjE5OTA1LTYxN2FlNWFkLWY4ZjItNGZmYi05YmEyLTAwMGI1ZmE2NTAwMS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwNlQxNDA1MzVaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1hZDVkZjQ4ODQ4ZTg1YTk0NjJkYjM3ZmNkYTFkNDg5OTFiNWY3OGVjMzY4YjYyZjVhNjc3MDlmOGYxZTZhYTRjJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.ahtKPnXQpY636oCh5wyymD-fytrMDjwoU_9tRK0sB9g)
![Screenshot 2024-04-13 at 17 52 05](https://private-user-images.githubusercontent.com/327855/322219913-a5f0cc74-c9c8-4bbc-ac40-ce6ea4eb7806.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg4NTEwMzUsIm5iZiI6MTczODg1MDczNSwicGF0aCI6Ii8zMjc4NTUvMzIyMjE5OTEzLWE1ZjBjYzc0LWM5YzgtNGJiYy1hYzQwLWNlNmVhNGViNzgwNi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA2JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwNlQxNDA1MzVaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT04MDIwZjliMDM3NzcwNGVjNDdmYjQ1NGEyNGZiZDRmZjhlOWY3ZjdmMDg3ZmRiNmQ5ZGQ0MzYwMGQzMTgyY2UxJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.H_yyKAv7cjsmsM7cSmEDgPaqhBWeiZqtTxm1CrnjXlg)
- List Branches: View all available Git branches in a Telescope picker.
- Switch Branches: Easily switch between branches with a simple selection.
- Create Branches: Prompt to create a new branch if it doesn't exist and switch to it.
- Neovim (0.5.0 or newer)
- Telescope.nvim
- Git installed on your system
Ensure you have Telescope.nvim installed and configured before adding GitSelectBranch.
Using packer.nvim
use {
'nucc/git-select-branch',
requires = { {'nvim-telescope/telescope.nvim'} }
}
Plug 'nucc/git-select-branch'
Plug 'nvim-telescope/telescope.nvim'
After installation, you can use the plugin with the following command:
:SelectGitBranch
You can also execute this command by <leader>gb
or bind it to a keyboard shortcut in your init.vim or init.lua:
nnoremap <leader>Gs :SelectGitBranch<CR>
vim.api.nvim_set_keymap('n', '<leader>Gs', '<cmd>SelectGitBranch<CR>', { noremap = true, silent = true })
No additional configuration is needed to start using GitSelectBranch. Customize the key bindings as needed.
Contributions are welcome! If you'd like to contribute, please fork the repository and use a feature branch. Pull requests are warmly welcome.
This project is licensed under the MIT License - see the LICENSE.md file for details.