diff --git a/lua/neo-tree/sources/git_status/init.lua b/lua/neo-tree/sources/git_status/init.lua index 8cd9dc90..8bbf5172 100644 --- a/lua/neo-tree/sources/git_status/init.lua +++ b/lua/neo-tree/sources/git_status/init.lua @@ -24,6 +24,7 @@ end ---Navigate to the given path. ---@param path string Path to navigate to. If empty, will navigate to the cwd. M.navigate = function(state, path, path_to_reveal, callback, async) + state.path = path or state.path state.dirty = false if path_to_reveal then renderer.position.set(state, path_to_reveal) diff --git a/lua/neo-tree/sources/git_status/lib/items.lua b/lua/neo-tree/sources/git_status/lib/items.lua index 38d5ba87..6ff5413b 100644 --- a/lua/neo-tree/sources/git_status/lib/items.lua +++ b/lua/neo-tree/sources/git_status/lib/items.lua @@ -13,7 +13,7 @@ M.get_git_status = function(state) return end state.loading = true - local status_lookup, project_root = git.status(state.git_base, true) + local status_lookup, project_root = git.status(state.git_base, true, state.path) state.path = project_root or state.path or vim.fn.getcwd() local context = file_items.create_context() context.state = state