Skip to content

Commit

Permalink
feat(git): Plugin.submodules = false will now skip fetching git sub…
Browse files Browse the repository at this point in the history
…modules
  • Loading branch information
folke committed Feb 12, 2023
1 parent 4917222 commit 0d3f2c4
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 4 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ require("lazy").setup({
| **commit** | `string?` | Commit of the repository |
| **version** | `string?` | Version to use from the repository. Full [Semver](https://devhints.io/semver) ranges are supported |
| **pin** | `boolean?` | When `true`, this plugin will not be included in updates |
| `submodules` | `boolean?` | When false, git submodules will not be fetched. Defaults to `true` |
| **event** | `string?` or `string[]` or `fun(self:LazyPlugin, event:string[]):string[]` | Lazy-load on event. Events can be specified as `BufEnter` or with a pattern like `BufEnter *.lua` |
| **cmd** | `string?` or `string[]` or `fun(self:LazyPlugin, cmd:string[]):string[]` | Lazy-load on command |
| **ft** | `string?` or `string[]` or `fun(self:LazyPlugin, ft:string[]):string[]` | Lazy-load on filetype |
Expand Down
17 changes: 13 additions & 4 deletions lua/lazy/manage/task/git.lua
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,11 @@ M.clone = {
args[#args + 1] = "--filter=blob:none"
end

vim.list_extend(args, {
"--recurse-submodules",
"--progress",
})
if self.plugin.submodules ~= false then
args[#args + 1] = "--recurse-submodules"
end

args[#args + 1] = "--progress"

if self.plugin.branch then
vim.list_extend(args, { "-b", self.plugin.branch })
Expand Down Expand Up @@ -158,6 +159,10 @@ M.fetch = {
"--progress",
}

if self.plugin.submodules == false then
table.remove(args, 2)
end

self:spawn("git", {
args = args,
cwd = self.plugin.dir,
Expand Down Expand Up @@ -209,6 +214,10 @@ M.checkout = {
"--recurse-submodules",
}

if self.plugin.submodules == false then
table.remove(args, 3)
end

if lock then
table.insert(args, lock.commit)
elseif target.tag then
Expand Down
1 change: 1 addition & 0 deletions lua/lazy/types.lua
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
---@field commit? string
---@field version? string
---@field pin? boolean
---@field submodules? boolean Defaults to true

---@class LazyPluginBase
---@field [1] string?
Expand Down

0 comments on commit 0d3f2c4

Please sign in to comment.