Hey! Not sure if am I allowed (delete the message ...
# compose-desktop
a
Hey! Not sure if am I allowed (delete the message if not) but I'd like to share a project with Compose Desktop that I've been working on for quite some time in my free time. It's a Git client based on Compose+JGit. It's still an alpha (still missing quite some features) but feel free to give it a try. PD: The UI/UX need to improve a lot but I haven't got into that yet, I want to have the features ready first. https://github.com/aeab13/Gitnuro/
๐Ÿ‘ 8
๐Ÿ‘๐Ÿป 2
๐Ÿ‘๐Ÿผ 1
๐Ÿ‘ 1
K 13
๐ŸŽ‰ 19
๐Ÿคฉ 5
b
Always happy to see another project launched with CfD! Not to thrash your efforts, but is there really a need for yet another git gui? What unique things is this project bringing to the table? Genuinely curious.
a
@Big Chungus Yeah, I can understand, that's the first question I asked to myself. The thing is, I do everything on linux and try to use as much open source (better if it's free/libre) but I haven't found any git clients that allow me to do common tasks with a "modern" experience (GitKraken/SmartGit are the best for linux but also close source, I wouldn't mind to pay if they were FOSS). So after searching for quite some time, I decided I wanted to create something that can be as good as closed source alternatives but being open. There are some alternative clients that I've tried but everytime something is missing or the UX has some big problems. It's multiplatform because the JVM allows that, otherwise I'd quite likely be sth focused mainly on linux (and probably windows afterwards). I hope I've answered your question and thanks for the interest ๐Ÿ˜„
๐Ÿ‘๐Ÿป 1
๐Ÿ‘ 3
๐Ÿ‘๐Ÿผ 1
m
Looks really good. Did you test it on bigger projects? I have a project that needs to interact with git repositories, and initially I used JGit too. But JGit is a complete reimplementation of git and it's nowhere as fast as real git. I found it unacceptable on big repositories/big commits, and in the end I wrote a simple wrapper for real git.
Other git GUI's also allow you to use the system installation of git, so that would be a good feature to have either way.
a
Hey @Marcin Wisniowski I have done some testing using the Linux repository and didn't have problems aside from taking a bit to open, however, after limiting the commits to 1k, it's been really fast (it's 1k hardcoded for now but will be a number that the user will be able to configure). I may consider wrapping libgit2 for specific functionalities if needed but not for now. What use cases were troublesome when using JGit? So I can check if it's worth the effort.
m
I have a repo where many commits touched thousands of files, with a working directory where
git status
would often have thousands of modified files to report. Real git has no issues whatsoever with that, but JGit was taking minutes doing the same operations.
I will try downloading Gitnuro and see how it does on that repo.
a
Uh thousands of files can be troublesome, I'm not even sure where could I find a repo that has that many files changed in a single commit. Let me know if you try it but I'm afraid that the result won't be positive.
m
It's doing pretty well. When clicking commits it takes a few seconds to load the list of files but it's acceptable. Diffs in a million+ lines JSON file freeze the UI while loading though.
I like it though!
a
I've considered doing some kind of lazy implementation for the diff but not sure how possible or easy to do is
But I'm glad that the commits worked at least!
Thanks! I'll try to focus on the UI/UX to fix small details for an initial beta release
m
I tried the two things that I feel are missing in Sublime Merge: โ€ข WebP image preview: unfortunately also missing โ€ข Animated GIF preview: Sublime Merge shows the first frame, Gitnuro no preview at all But that's definitely not something I'd expect before even a Beta haha. ๐Ÿ˜„
t
Wow! The UIs are incredible!
๐Ÿ˜ 1
๐Ÿ™ 1
a
@Marcin Wisniowski add webp support, that was an easy one ๐Ÿ˜„ At least for the current implementation where I simply check the file extension (I'll change it to check the MIME type but for now... ๐Ÿ˜› )
m
With that quick feature request fulfillment the project will go far! ๐Ÿ˜„
๐Ÿ˜† 1
s
WOOOOW! The project is awesome ๐Ÿ˜ฎ KK
๐Ÿ™ 1
๐Ÿ˜ 1