docs(readme): update usage and build guide
All checks were successful
Build Windows EXE / build-windows (push) Successful in 5m44s

This commit is contained in:
2026-06-18 21:09:22 -05:00
parent 90937265dd
commit 084b707776

103
README.md
View File

@@ -1,42 +1,93 @@
# Gitree
A native Dear ImGui Git client built with libgit2 and GLFW.
[![Windows build](https://dock-it.dev/Idea-Studios/Gitree/actions/workflows/windows-build.yml/badge.svg?branch=prod)](https://dock-it.dev/Idea-Studios/Gitree/actions?workflow=windows-build.yml)
[![Latest release](https://img.shields.io/gitea/v/release/Idea-Studios/Gitree?gitea_url=https%3A%2F%2Fdock-it.dev&label=release)](https://dock-it.dev/Idea-Studios/Gitree/releases/latest)
[![Platform](https://img.shields.io/badge/platform-Windows_x64-0078D4?logo=windows)](https://dock-it.dev/Idea-Studios/Gitree/releases)
[![C++](https://img.shields.io/badge/C%2B%2B-20-00599C?logo=cplusplus)](https://en.cppreference.com/w/cpp/20)
[![License](https://img.shields.io/badge/license-CC_BY--SA_4.0-lightgrey.svg)](https://dock-it.dev/Idea-Studios/Gitree/src/branch/prod/LICENSE)
## Build on Windows
A fast, native Git desktop client for Windows.
Clone with submodules, then run `run.bat`. The script configures a Release build,
builds Gitree and launches it. You can pass a repository path to open it directly:
## Download
Download the current Windows x64 executable from the
[latest release](https://dock-it.dev/Idea-Studios/Gitree/releases/latest), or browse
[all releases](https://dock-it.dev/Idea-Studios/Gitree/releases).
No installer is required: download the executable and run it.
## Use Gitree
Open Gitree, choose **Open repository**, and select a local Git repository. You can
also pass its path when launching from a terminal:
```powershell
.\Gitree-windows-x64.exe C:\path\to\repository
```
Use the sidebar to switch branches and browse refs. Select a commit to inspect its
details and changes. The commit area lets you stage files and create commits.
## Build from source
### Requirements
- Windows 10 or later (x64)
- [Git](https://git-scm.com/download/win)
- [CMake 3.21 or later](https://cmake.org/download/)
- A C++20 compiler: Visual Studio 2022 with the **Desktop development with C++**
workload, or a recent MinGW-w64 toolchain
- Ninja is optional; `run.bat` uses it automatically when available
Clone the repository with all submodules:
```powershell
git clone --recurse-submodules https://dock-it.dev/Idea-Studios/Gitree.git
cd Gitree
```
If the repository was cloned without `--recurse-submodules`, initialize the
dependencies before configuring the build:
```powershell
git submodule update --init --recursive
```
### Build and run automatically
From a Developer PowerShell or Command Prompt:
```bat
run.bat
```
`run.bat` configures a Release build, builds Gitree, and launches it. Pass a
repository path to open it immediately:
```bat
run.bat C:\path\to\repository
```
Manual build:
### Build with Visual Studio 2022
```bat
git submodule update --init --recursive
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
```powershell
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release --parallel
.\build\bin\Release\gitree.exe
```
Vendored dependencies are pinned under `vendor/` and compiled as static libraries:
### Build with Ninja
- libgit2 1.9.4
- Dear ImGui 1.92.8 (docking branch)
- GLFW 3.4
- iZo 0.1.0
Run these commands in a shell where your compiler is available. For MSVC, use a
Visual Studio Developer PowerShell or Developer Command Prompt.
The bundled Inter variable font is licensed under the SIL Open Font License.
Font Awesome Free icons are bundled from Attascii and merged into the ImGui font atlas.
```powershell
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
.\build\bin\gitree.exe
```
User settings, ImGui layout state, and recently closed repository history are stored in
`%APPDATA%\Identity\Gitree` on Windows. The directory is created automatically.
Commit avatars are resolved from normalized author emails through Gravatar and cached in
the `avatars` subdirectory; an identicon is used when an account has no custom image.
## License
## Source layout
- `src/managers/` owns Git, window, user-data, and avatar services.
- `src/models/` contains repository and commit data models.
- `src/ui/` contains the Dear ImGui application interface.
- `src/main.cpp` is the minimal process entry point.
Gitree is licensed under the [Creative Commons Attribution-ShareAlike 4.0
International license](https://dock-it.dev/Idea-Studios/Gitree/src/branch/prod/LICENSE).