DBDelve
Dive deep into your data. A fast, native, multi-engine database client written in Rust. Free and open source, no telemetry.
翻译准备中
A bamboo loving git gui
翻译准备中
正在加载完整 README。
查看完整 README ↗▓▒░ a fast git client · line-level staging · GPU-drawn · Tokyo Night ░▒▓
Recorded from the real app by docs/make-demo.py on a throwaway demo project. Click for the sharper video.
In the spirit of GitKraken, written in Rust on gpui (Zed's GPU UI framework).
// WIP node for uncommitted work. Only the rows you can see
are ever built.⌘⏎, amend with the last message preloaded.⌘⌫ works on the selection). Later commits are
rebased and uncommitted changes are autostashed.git mv) from the file menu.Group the repositories you work on together into a project. The bar at the top shows each one as a tab, so you can see at a glance where the work is:
▣ bamboo ▾ │ bamboo-api main ●3 ↑1 │ bamboo-web main ↓3 │ bamboo-infra main [merging] ●1 │ + 4 repos · 1 mid-operation · 3 with changes
Each tab shows the branch, uncommitted changes (●), ahead / behind its upstream (↑ ↓), and any merge, rebase or cherry-pick in progress. The end of the bar adds them up for the whole project.
One repository is open at a time: click a tab or press ⌘1–⌘9.
Unsent commit messages are kept per repository.
Opening a repository (⌘O, or gitpanda path) adds it to the active
project, or switches to the project that already has it. Launched with no
repository, gitpanda reopens where the active project was left.
The ▾ menu switches, creates, renames and deletes projects. Right-click a tab to reorder it, copy its path, show it in Finder, or remove it.
Projects live in a plain text file you can edit by hand:
~/.config/gitpanda/projects (or wherever GITPANDA_PROJECTS points).
active = bamboo
[bamboo]
* /Users/me/code/bamboo-api
/Users/me/code/bamboo-web
* marks each project's last open repository.
Download a build from the releases page:
| Platform | Package |
|---|---|
| macOS (Apple silicon + Intel) | .dmg, .app.zip, or a bare binary .tar.gz |
| Debian, Ubuntu, Mint, Pop!_OS | .deb: sudo apt install ./gitpanda_*.deb |
| Fedora, RHEL, openSUSE | .rpm: sudo dnf install ./gitpanda-*.rpm |
| Arch, Manjaro, EndeavourOS | .pkg.tar.zst: sudo pacman -U gitpanda-bin-*.pkg.tar.zst |
| Any Linux (glibc 2.17+) | .AppImage, or a bare binary .tar.gz |
| Windows (x64, ARM64) | .zip |
Linux builds are x86_64 and aarch64 (the Arch package is x86_64 only), run
on glibc 2.17 or newer (RHEL/CentOS 7+, Ubuntu 18.04+, Debian 10+, ...), and
need a Vulkan driver and git 2.15 or newer. RHEL/CentOS 7 ship git 1.8:
install rh-git227 from Software Collections. The macOS app is not
notarized: the first time, right-click it and choose Open, or run
xattr -d com.apple.quarantine /Applications/gitpanda.app.
Every merge to main is released: bump.yml bumps the patch version in
Cargo.toml, Cargo.lock and packaging/arch/PKGBUILD, commits that to
main, tags it vX.Y.Z and starts release.yml, which builds every package
and publishes the GitHub release. For a minor or major release, bump the
version in the PR yourself and it's tagged as is. Changes to only Markdown or
docs/ aren't released. Pushing a matching tag by hand works too.
ci.yml builds and tests every push on Linux, macOS and Windows.
Build from source with a recent stable Rust toolchain. On Linux, first install gpui's build dependencies (Debian/Ubuntu names):
sudo apt install libxkbcommon-dev libxkbcommon-x11-dev libwayland-dev libvulkan-dev \
libx11-xcb-dev libxcb1-dev libfontconfig-dev libfreetype-dev
Try it without installing:
git clone https://github.com/danihegglin/gitpanda.git
cd gitpanda
cargo run --release -- /path/to/repo # or run it inside a repo
Install the gitpanda command (into ~/.cargo/bin):
cargo install --git https://github.com/danihegglin/gitpanda
# or, from a clone:
cargo install --path .
The first build compiles gpui and takes a few minutes; after that it's quick.
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗