Gitnuro - Multiplatform Git Client
Find a file
2022-04-04 18:43:27 +02:00
gradle/wrapper
icons Added icon and data for windows build 2022-04-04 05:15:42 +02:00
res/img
src Renamed project from references 2022-04-04 18:43:27 +02:00
.gitignore
build.gradle.kts Added additional info dialog 2022-04-04 18:32:06 +02:00
gradle.properties
gradlew
gradlew.bat
latest.json
LICENSE
README.md
settings.gradle.kts

Gitnuro

A FOSS Git client based on (Jetbrains) Compose and JGit.

The main goal of Gitnuro is to provide a multiplatform open source Git client without any kind of constraint to how you can use it nor relying on web technologies.

The project it is still in alpha and many features are lacking or missing, but can be good for basic usage.

Gitnuro features:

  • View diffs for text based files.
  • View your history log and all its branches.
  • Add (stage) & reset (unstage) files.
  • Stage & unstage of hunks.
  • Checkout files (revert changes of uncommited files).
  • Clone.
  • Commit.
  • Reset commits.
  • Revert commits.
  • Amend previous commit.
  • Merge.
  • Rebase.
  • Create and delete branches locally.
  • Create and delete tags locally.
  • View remote branches.
  • Pull and push.
  • Stash and pop stash.
  • Checkout a commit (detached HEAD).
  • View changes/diff in images (side to side comparison).
  • Force push.
  • Remove branches from remote.
  • Manage remotes.
  • Start a new local repository.
  • Search by commit message/author/commit id.

Missing:

  • Create/Apply patches
  • Rebase interactive.
  • Remove tags from remote.
  • Side by side diff in text files.
  • View stashes in the log tree.
  • View file history.
  • Blame file.
  • Submodules support.

Steps to build

Note: Requires minimum JDK 16.

  • Clone the project
  • Open terminal/shell in the project folder
  • ./gradlew run to run the project
  • ./gradlew tasks to view other build options (native building requires java >=15)

Feel free to open issues for bugs or sugestions.

Screenshots (latest update: 01 feb 2022)

Example 1 Example 2 Example 3 Example 4 Example 5 Example 6