junegunn / junegunn/vim-plug

Fails when plugins are absorbed (via `git submodule absorbgitdirs`)

Open
#866 1 comment 2 reactions 0 assignees View on GitHub
Dominant language
Vim Script
Stars
35.8k
Forks
1.9k
PR merge metrics
No merged PRs in 30d

Description

If your `~/.vim/plugged` or similar is contained in another repo (for example, a dotfiles repo); and you've added the plugins as submodules in order to track their updates in that repo; then you may want to use [`git submodule absorbgitdirs`](https://git-scm.com/docs/git-submodule#Documentation/git-submodule.txt-absorbgitdirs).

If you do that, Vim-Plug will break because `absorbgitdirs` replaces the `.git/` directory with a flat file containing a path like `../../.git/modules/some-plugin/`, but Vim-Plug explicitly references a folder in the command [`git config -f .git/config remote.origin.url`](https://github.com/junegunn/vim-plug/blob/226d6abeb2f02bcd8f5b11288543259fa2e02962/plug.vim#L1628).

*The existing pull request #858 would fix this*, among the other issues it would fix (#470, #834). This issue is opened in support of that PR, and as a record for other troubleshooters.

------------------------------

```
NVIM v0.3.8
Build type: Release
LuaJIT 2.0.5
Compilation: /usr/local/Homebrew/Library/Homebrew/shims/mac/super/clang -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNDEBUG -DMIN_LOG_LEVEL=3 -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wimplicit-
fallthrough -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -I/tmp/neovim-20190704-11886-1ukicoc/neovim-0.3.8/build/config -I/tmp/
neovim-20190704-11886-1ukicoc/neovim-0.3.8/src -I/usr/local/include -I/usr/local/opt/gettext/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/tmp/neovim-20190704-
11886-1ukicoc/neovim-0.3.8/build/src/nvim/auto -I/tmp/neovim-20190704-11886-1ukicoc/neovim-0.3.8/build/include
Compiled by brew@Mojave.local

Features: +acl +iconv +jemalloc +tui
See ":help feature-compile"

system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/local/Cellar/neovim/0.3.8/share/nvim"

Run :checkhealth for more info
```

- Type:
- [x] Bug
- [ ] Enhancement
- [ ] Feature Request
- [ ] Question
- OS:
- [x] All/Other
- [ ] Linux
- [ ] OS X
- [ ] Windows
- Vim:
- [x] Terminal Vim
- [x] GVim
- [x] Neovim

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.