Windows¶
Platform-specific guidance for running Gity on Windows.
File Watching¶
Gity uses ReadDirectoryChangesW for file watching on Windows. This is the native Windows API for directory change notifications.
Installation¶
MSI Installer¶
Download the MSI from releases and run it.
The installer:
- Installs
gity.exetoC:\Program Files\Gity - Adds the install directory to PATH
- Optionally configures auto-start
From Source¶
With Rust installed:
Scoop (Coming Soon)¶
Auto-Start¶
Task Scheduler¶
- Open Task Scheduler
- Create Basic Task > Name: "Gity Daemon"
- Trigger: "When I log on"
- Action: Start a program
- Program:
C:\Program Files\Gity\gity.exe - Arguments:
daemon run - Finish
Startup Folder¶
- Press
Win+R, typeshell:startup - Create a shortcut to
gity.exe daemon run
Data Location¶
Default: %APPDATA%\Gity
Typical path: C:\Users\YourName\AppData\Roaming\Gity
Override with:
System Tray¶
The tray icon appears in the Windows notification area (system tray).
If the icon doesn't appear:
- Click the up arrow (^) in the taskbar
- Look for the Gity icon in the overflow area
- Drag it to the main taskbar for quick access
Long Paths¶
Windows has a default 260-character path limit (MAX_PATH). Deep directory structures may cause issues.
Enable Long Paths (Windows 10+)¶
Group Policy:
- Open
gpedit.msc - Navigate to: Computer Configuration > Administrative Templates > System > Filesystem
- Enable "Enable Win32 long paths"
Registry:
Restart after making this change.
Antivirus¶
Real-time antivirus scanning can slow down file operations. Consider adding exclusions:
Windows Defender¶
- Open Windows Security
- Go to Virus & threat protection > Manage settings
- Under Exclusions, click Add or remove exclusions
- Add:
C:\Program Files\Gity%APPDATA%\Gity- Your repository directories
Other Antivirus¶
Consult your antivirus documentation to add similar exclusions.
PowerShell¶
Use PowerShell for better Unicode support:
# Check version
gity --version
# Register a repo
gity register C:\code\my-repo
# List repos
gity list --stats
CMD (Command Prompt)¶
Also works in traditional Command Prompt:
Git for Windows¶
Ensure Git for Windows is installed and accessible:
PATH Configuration¶
Git for Windows should be in your PATH. Verify:
Windows Terminal¶
For the best experience, use Windows Terminal:
- Better Unicode support
- Proper color rendering
- Multiple tabs
WSL2¶
If you're using Windows Subsystem for Linux, see the dedicated WSL2 Guide.
Key points:
- Repos on Linux filesystem (
~/) work well - Repos on Windows filesystem (
/mnt/c/) don't get proper file notifications
Network Drives¶
File watching on mapped network drives (\\server\share or Z:) is unreliable:
- SMB doesn't reliably propagate change notifications
- Consider disabling fsmonitor for network repos:
OneDrive¶
Repos in OneDrive-synced folders may have issues:
- File conflicts during sync
- Delayed change notifications
- Placeholder files that aren't fully downloaded
Recommendation: Keep repos in non-synced folders.
Performance Tips¶
-
Use SSD — NVMe or SATA SSD significantly improves scan times
-
Disable Windows Search indexing — For repo directories:
- Right-click folder > Properties > Advanced
-
Uncheck "Allow files in this folder to have contents indexed"
-
Exclude from Defender — Add repo folders to antivirus exclusions
-
Use native Git — Git for Windows performs better than Git in WSL2 for Windows-hosted repos
Firewall¶
Gity uses local TCP (default: port 7557) for IPC. This shouldn't trigger firewall prompts since it's localhost-only.
If you see a firewall prompt:
- Allow private networks only
- No need for public network access
Troubleshooting¶
"Access is denied"¶
Run PowerShell as Administrator if accessing protected directories.
Or ensure you have permissions on the repository folder.
Tray icon not visible¶
- Check the overflow area (^ in taskbar)
- Ensure background apps are allowed:
- Settings > Privacy > Background apps
- Allow Gity to run in background
Slow performance¶
- Check antivirus exclusions
- Disable Windows Search indexing on repos
- Ensure repos are on SSD
- Close unnecessary applications
"The system cannot find the path specified"¶
Check that:
- The path exists
- You have read/write access
- The path isn't too long (enable long paths if needed)
Git not found¶
Add Git to PATH:
# Add to current session
$env:PATH += ";C:\Program Files\Git\cmd"
# Add permanently (run as Admin)
[Environment]::SetEnvironmentVariable("PATH", $env:PATH + ";C:\Program Files\Git\cmd", "Machine")
Visual Studio / Visual Studio Code¶
Both work seamlessly with Gity. The accelerated git status benefits:
- VS Code's Git integration
- Visual Studio's Git Changes window
- Any extension that calls Git
Building from Source¶
Requirements:
- Visual Studio Build Tools or Visual Studio (with C++ workload)
- Rust (via rustup)
The binary is at target\release\gity.exe.