TenantAtlas/.specify/extensions/git/commands/speckit.git.initialize.md
ahmido 76334cb096
Some checks failed
Main Confidence / confidence (push) Failing after 54s
chore: migrate repo to managed spec-kit (#266)
## Summary

Selective migration to the managed Spec Kit project structure.

## Included

- add managed Spec Kit integration metadata under `.specify/`
- add bundled `speckit` workflow registry
- add bundled `git` extension, scripts, and config
- add new `speckit.git.*` command surfaces for Copilot, Gemini, and `.agents`
- add the Spec Kit plan marker block to `.github/copilot-instructions.md`

## Intentionally excluded

- no replacement of the existing customized core `speckit.*.agent.md` files
- no `.vscode/settings.json` commit; the copied manifest was adjusted accordingly
- no changes to the active `specs/231-finding-outcome-taxonomy` work

## Validation

- `specify integration list`
- `specify workflow list`
- `specify extension list`
- focused managed-file diff review

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #266
2026-04-22 22:29:05 +00:00

1.5 KiB

description
Initialize a Git repository with an initial commit

Initialize Git Repository

Initialize a Git repository in the current project directory if one does not already exist.

Execution

Run the appropriate script from the project root:

  • Bash: .specify/extensions/git/scripts/bash/initialize-repo.sh
  • PowerShell: .specify/extensions/git/scripts/powershell/initialize-repo.ps1

If the extension scripts are not found, fall back to:

  • Bash: git init && git add . && git commit -m "Initial commit from Specify template"
  • PowerShell: git init; git add .; git commit -m "Initial commit from Specify template"

The script handles all checks internally:

  • Skips if Git is not available
  • Skips if already inside a Git repository
  • Runs git init, git add ., and git commit with an initial commit message

Customization

Replace the script to add project-specific Git initialization steps:

  • Custom .gitignore templates
  • Default branch naming (git config init.defaultBranch)
  • Git LFS setup
  • Git hooks installation
  • Commit signing configuration
  • Git Flow initialization

Output

On success:

  • ✓ Git repository initialized

Graceful Degradation

If Git is not installed:

  • Warn the user
  • Skip repository initialization
  • The project continues to function without Git (specs can still be created under specs/)

If Git is installed but git init, git add ., or git commit fails:

  • Surface the error to the user
  • Stop this command rather than continuing with a partially initialized repository