| description | Initialize a Git repository with an initial commit |
|---|
Initialize a Git repository in the current project directory if one does not already exist.
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 ., andgit commitwith an initial commit message
Replace the script to add project-specific Git initialization steps:
- Custom
.gitignoretemplates - Default branch naming (
git config init.defaultBranch) - Git LFS setup
- Git hooks installation
- Commit signing configuration
- Git Flow initialization
On success:
✓ Git repository initialized
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