ToolsGit Integration

Git Integration

Drok speaks standard Git protocol. Any Git client works. Zero migration friction.

Drok implements the Git protocol natively. This means every Git client — the git CLI, VS Code, JetBrains IDEs, Tower, Fork, Sourcetree, and any other tool that speaks Git — works with Drok without plugins, extensions, or configuration beyond setting a remote URL.

Remote Configuration

HTTPS

git remote add drok https://drok.us/your-org/your-repo.git

HTTPS authentication uses your Drok personal access token:

git config --global credential.https://drok.us.helper store

Or configure per-repository credentials via your Git credential manager.

SSH

git remote add drok git@drok.us:your-org/your-repo.git

SSH authentication uses keys registered in your Drok account. See Installation for SSH key setup.

SSH Config

For advanced SSH configuration:

# ~/.ssh/config
Host drok.us
  HostName drok.us
  User git
  IdentityFile ~/.ssh/id_ed25519
  PreferredAuthentications publickey

Operations

All standard Git operations work as expected:

# Clone
git clone https://drok.us/your-org/your-repo.git
git clone git@drok.us:your-org/your-repo.git
 
# Push
git push drok main
 
# Pull
git pull drok main
 
# Fetch
git fetch drok
 
# Push tags
git push drok --tags
 
# Push all branches
git push drok --all

LFS

Git LFS works transparently with Drok:

git lfs install
git lfs track "*.psd"
git add .gitattributes
git commit -m "Configure LFS"
git push drok main

LFS objects are stored on Cloudflare R2 with zero egress fees. See Repositories for LFS details.

Hooks

Drok supports server-side Git hooks:

HookTrigger
pre-receiveBefore accepting a push
post-receiveAfter accepting a push
updateBefore updating a ref

Server-side hooks are configured via the web interface or API. They execute within Drok's infrastructure and can enforce custom policies (commit message format, file size limits, license headers).

IDE Integration

VS Code

VS Code's built-in Git support works with Drok repositories with no additional extensions. Clone, push, pull, and branch operations use the configured remote.

For enhanced Drok integration (merge requests, pipelines, code review), install the Drok VS Code extension:

code --install-extension drok.vscode-drok

JetBrains

JetBrains IDEs (IntelliJ, WebStorm, PyCharm, etc.) work with Drok through their built-in Git support. For enhanced integration:

  1. Open Settings > Version Control > Drok
  2. Add your Drok server URL and personal access token

Neovim

The drok.nvim plugin provides:

  • Merge request creation and review from within Neovim
  • Pipeline status in the statusline
  • Issue creation and browsing
  • Code review comments in the gutter
-- lazy.nvim
{
  "drok/drok.nvim",
  config = function()
    require("drok").setup({
      host = "drok.us",
    })
  end,
}

Multiple Remotes

Maintain remotes on both Drok and another platform during migration:

git remote add drok https://drok.us/your-org/your-repo.git
git remote add github https://github.com/your-org/your-repo.git
 
# Push to both
git push drok main
git push github main
 
# Or push to all remotes at once
git remote add all https://drok.us/your-org/your-repo.git
git remote set-url --add all https://github.com/your-org/your-repo.git
git push all main

Signed Commits

Drok verifies GPG, SSH, and post-quantum signatures on commits:

# GPG signing
git config --global commit.gpgsign true
git config --global user.signingkey YOUR_GPG_KEY_ID
 
# SSH signing
git config --global gpg.format ssh
git config --global user.signingkey ~/.ssh/id_ed25519.pub
 
# Post-quantum signing (via drok CLI)
drok pq-key configure-git

Signed commits display a verification badge in the Drok web interface. See Post-Quantum Cryptography for post-quantum signing details.

Submodules

Git submodules work with Drok repositories:

git submodule add https://drok.us/your-org/shared-lib.git lib/shared

The Drok web interface renders submodule links — clicking a submodule directory navigates to the referenced repository at the pinned commit.