Azure DevOps Git Clone

imagine if you could clone azure git repos in vscode as easily as you can do with github repos.....
imagine a vscode extension so obvious that the benevolent corporate behemoth behind both vscode and devops forgot to implement it...
...an extension so basic that when asked claude said 'ugh just ask gemini or something'...
well, stop wasting time imagining things and get back to work, it's real now
- click

- click

- login via ms/entra prompts

- select org

- select project

- pick a repo, pick a destination, choose current vs new window, done

priced at $0, no telemetry or any data collection. but if you're all hung up about transactions, feel free to take $50 out of your bank account and then send it back to yourself immediately, you've earned it!
The fine print
- One-click sign-in — uses VS Code's built-in Microsoft authentication. The Azure login opens in your browser and returns to VS Code automatically (with a copy & paste fallback if it can't). First run only — VS Code remembers the session.
- Browse, don't paste — pick your organization → project → repository from searchable quick-pick lists. No Personal Access Tokens to juggle, no URLs to copy out of the browser.
- Native clone experience — runs
git clone directly with live progress (Receiving objects / Resolving deltas) and then opens the cloned repository in your current or a new window, so the flow works consistently whether or not you already have a folder open. Also available from the Command Palette (Ctrl+Shift+P) as Azure DevOps: Clone Git Repository.
How a clone goes down
- Sign in to Microsoft / Entra (first run only).
- Pick organization → project → repository.
- Pick a parent folder (defaults to your configured default — see below).
- Name the clone folder (default:
<repo-name>_<timestamp>, e.g. web-app_2026-08-25-1538_47, so back-to-back clones don't collide — edit to whatever).
- Watch the clone progress.
- Pick Open in Current Window or Open in New Window (only asked when a workspace is open).
Configuration
| Setting |
Default |
What it does |
adoGitClone.defaultClonePath |
(empty) |
Parent folder used in the destination picker. Leave empty to default to the parent of the current workspace folder, or your home directory if no workspace is open. Supports ~ for the home directory (e.g. ~/repos). |
Set it in settings.json:
"adoGitClone.defaultClonePath": "~/repos/azure"
Requirements
- VS Code 1.85 or newer
- The built-in Git extension (enabled by default)
- A Microsoft / Entra ID account with access to your Azure DevOps organizations
How it works
The extension requests an access token for the Azure DevOps resource (499b84ac-1321-427f-aa17-267ca6975798/.default) through VS Code's Microsoft authentication provider, then calls the Azure DevOps REST API to enumerate your organizations, projects, and repositories. The selected repository's remote URL is passed to the built-in Git extension for cloning; Git's credential manager handles repository authentication from there.
Developing
npm install
npm run compile # or: npm run watch
Press F5 to launch an Extension Development Host, or use the Package VSIX (Marketplace) debug configuration to build an installable .vsix.
Links