return {
	{
		"tpope/vim-fugitive",
	},
    {
        "sindrets/diffview.nvim",
        dependencies = "nvim-lua/plenary.nvim",
        config = function()
            vim.keymap.set("n", "<leader>gd", ":DiffviewOpen<CR>", {})
            vim.keymap.set("n", "<leader>gD", ":DiffviewClose<CR>", {})
        end,
    },
	{
		"lewis6991/gitsigns.nvim",
		config = function()
			require("gitsigns").setup()

			vim.keymap.set("n", "<leader>gp", ":Gitsigns preview_hunk<CR>", {})
			vim.keymap.set("n", "<leader>gt", ":Gitsigns toggle_current_line_blame<CR>", {})
			vim.keymap.set("n", "<leader>gn", ":Gitsigns next_hunk<CR>", {})
			vim.keymap.set("n", "<leader>gN", ":Gitsigns prev_hunk<CR>", {})
			vim.keymap.set("n", "<leader>ga", ":Gitsigns stage_hunk<CR>", {})
			vim.keymap.set("n", "<leader>gA", ":Gitsigns stage_buffer<CR>", {})
			vim.keymap.set("n", "<leader>gu", ":Gitsigns undo_stage_hunk<CR>", {})
			vim.keymap.set("n", "<leader>gb", ":Gitsigns blame<CR>", {})
			vim.keymap.set("n", "<leader>gc", ":Gitsigns change_base", {})
		end,
	},
}
