Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

--mount-git-worktree-common-dir silently ignored when devcontainer.json sets a custom workspaceMount

Open
#1,243 1 comment 1 reaction 1 assignee View on GitHub

@v-Mathiyarasy is already working on this.

Since Jun 11, 2026.

Assessment

This issue has not been assessed yet.

Description

Summary

--mount-git-worktree-common-dir (added in #1127) has no effect when the devcontainer.json defines a custom workspaceMount. The worktree common-dir bind mount is never added, so in-container git fails with fatal: not a git repository for any git worktree whose devcontainer uses a custom workspaceMount.

Root cause

In src/spec-node/utils.ts (getWorkspaceConfiguration, ~L386) the entire worktree detection + common-dir mount block is guarded by:

if (workspace && (!workspaceFolder || !('workspaceMount' in config))) { ... }

When workspaceMount is present, the block is skipped — the .git file is never read, the common dir is never resolved, and no mount is added. (Flagged as a possible oversight by @kapouer in #796, Mar 2026.)

Reproduction (CLI 0.82.0, git 2.52)
  1. git init main && (cd main && git commit --allow-empty -m init && git worktree add --relative-paths ../wt)
  2. Add wt/.devcontainer/devcontainer.json with a custom workspaceMount, e.g.:
    { "image": "mcr.microsoft.com/devcontainers/base:debian",
      "workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind",
      "workspaceFolder": "/workspace" }
    
  3. devcontainer up --workspace-folder wt --mount-git-worktree-common-dir true
  4. devcontainer exec --workspace-folder wt -- git -C /workspace statusfatal: not a git repository: (null)
  5. docker inspect on the container shows only the workspace bind mount; the worktree common dir was not mounted.

Removing workspaceMount makes it work — confirming the guard is the cause.

Expected

The common-dir mount should be computed and added even when a custom workspaceMount is set, by resolving the mount target relative to the configured workspaceMount target / workspaceFolder. This is the common case for monorepos that mount a parent directory and set workspaceFolder to a subpath. Relates to #796.

Workaround

Adding the common dir manually via a mounts entry (binding the main repo's .git to the path the worktree's .git file resolves to inside the container) restores in-container git — matching the maintainer's earlier suggestion in #796.

Dominant language
TypeScript
Stars
3k
Forks
461
Avg merge
18m
Merged PRs (30d)
5

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from devcontainers/cli

All issues in devcontainers/cli

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.