Setting User Credentials
1. Global Configuration
Global configuration applies to all repositories for the current user:
## Set global username
git config --global user.name "John Doe"
## Set global email
git config --global user.email "[email protected]"
2. Local Repository Configuration
Configure identity for a specific repository:
## Navigate to repository
cd /path/to/your/repository
## Set local username
git config user.name "Project Contributor"
## Set local email
git config user.email "[email protected]"
3. System-Wide Configuration
Configure for all users on the machine:
## Set system-wide username
sudo git config --system user.name "System Default"
## Set system-wide email
sudo git config --system user.email "[email protected]"
Configuration Precedence
graph TD
A[Configuration Precedence] --> B[Local Repository]
B --> C[Global User]
C --> D[System-Wide]
Verifying Configuration
## List all configurations
git config --list
## Show specific configuration
git config user.name
git config user.email
Managing Multiple Identities
Scenario |
Recommended Approach |
Personal Projects |
Global configuration |
Work Projects |
Local repository configuration |
Multiple Work Accounts |
Use conditional includes |
Advanced Configuration Tip
For complex scenarios, use conditional includes in .gitconfig
:
[includeIf "gitdir:~/work/"]
path = ~/.gitconfig-work
[includeIf "gitdir:~/personal/"]
path = ~/.gitconfig-personal
LabEx Recommendation
Always maintain clear, consistent identity settings across your development environments to ensure proper attribution and collaboration tracking.