Set your preferred repository path (default: ~/Documents/vscode-auto-sync)
Enter your GitHub repository URL (e.g., https://github.com/yourusername/your-repo.git)
Make sure you have git credentials configured for pushing
Manual Setup
Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
Run Auto Git Sync: Create New Sync Repository or Auto Git Sync: Configure Repository
Follow the prompts to set up your repository
Settings
autoGitSync.repositoryUrl: GitHub repository URL
autoGitSync.repositoryPath: Custom path for the sync repository (leave empty for default)
autoGitSync.enabled: Enable/disable auto sync (default: true)
autoGitSync.debounceTime: Time to wait after last change before committing in milliseconds (default: 5000)
autoGitSync.organizeByType: Organize files into folders by file type (default: true)
Commands
Auto Git Sync: Create New Sync Repository: Create and configure a new sync repository
Auto Git Sync: Configure Repository: Set up your GitHub repository URL
Auto Git Sync: Set Repository Path: Change the local repository path
Auto Git Sync: Toggle Auto Sync: Enable/disable the extension
How it Works
Repository Creation: Extension creates a local git repository at your specified path
Document Tracking: All document changes (including untitled files) are tracked
Auto Commit: After 5 seconds of inactivity, changes are committed with timestamps
Auto Push: Commits are automatically pushed to your GitHub repository
File Handling:
Smart Naming: Untitled documents use intelligent naming based on content or language
Multiple Files: Each open file is saved separately with its original name/title
Unique Names: Automatic handling of filename conflicts with incremental counters
File Organization: Files are organized into folders by type (JavaScript, Python, Documents, etc.)
Proper Extensions: Automatic extension detection based on language mode
All Changes Preserved: Complete history with descriptive commit messages
Requirements
Git must be installed and configured with push access to your repository
GitHub repository with appropriate permissions
Network connection for pushing changes
Note
This extension creates commits for every change. Use with repositories specifically intended for tracking document changes, not production code repositories.