A few days ago, I published FromGtoG 3.0 on the Ubuntu Snap Store. Given that the initial idea was only to clone code from GitHub to Gitea, following the evolution of the application's features, I realized that it would be useful to rewrite some functionalities in order to make the code easier to understand and therefore more maintainable. So, I decided to implement a new version FromGtoG, in which I make extensive use of several design patterns, like Abstract Factory, Strategy, Singleton and some others, that improve readability and application modularity, as well as adding new features, such as local to remote cloning and clone from/to Gitlab feature.
- 2025/06/23 - I discovered that FromGtoG
.deb
package was not working on Debian 10. I rebuilt the package on Debian 10. So, now it should work on both Ubuntu latest and Debian 10. I apologize for the inconvenience. Please ping me if you find a bug ( open an issue on GitHub or contact me). The v. 7.0.0 should work now also on Debian 10. You can download it from here. - fixed the windows/linux and macOS packaging - now it is possible to clone from GitHub. The absence of the
jdk.crypto.ec
andjava.security.sasl
imports in the--add-modules
option, prevented the SSL connections, so the clone process failed, in particular for GitHub (which uses SSL).
Currently, the application is able to clone:
- from GitHub to GitHub\Gitea\Local\Gitlab
- from Gitea to GitHub\Gitea\Local\Gitlab
- from Gitlab to GitHub\Gitea\Local\Gitlab
- from Local to GitHub\Gitea\Local (copies only git repositories, other directories are skipped)\Gitlab
Further features
- multi-threading
- logging (log file)
- delete all repositories from:
- from GitHub
- from Gitea
- from Gitlab
-
Download MacOS installer- just install the .pkg file. Note: for copy/paste actions, please use
Control + C
andControl + V
(I will enableCommand + C
andCommand + V
in the future.) -
Download Windows installer- just install the .exe file and start cloning.
-
Download Ubuntu .deb package - in order to install the .deb package execute
sudo dpkg -i romgtog_7.0.0_amd64.deb
Install from Ubutnu Snapstore - or execute
sudo snap install fromgtog
in order to install the application.
JDK 21, Intellij UI Designer (plugin for Intellij), Slf4J, Lombok, Apache Commons, JSON.
jdeps -s fromgtog.jar
It is necessary to install Xcode Command Line Tools before.
jpackage --type pkg --name "FromGtoG" --vendor "Andrei Dodu" --app-version "7.0.2" --input "target" --main-jar "fromgtog.jar" --icon "resources/icon.icns" --main-class "com.andreidodu.fromgtog.Main" --dest "executable" --add-modules java.base,java.desktop,java.net.http,jdk.crypto.ec,java.security.sasl,java.naming,java.sql,java.management,java.security.jgss,java.xml,java.logging --verbose --java-options "-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true -Dsun.java2d.uiScale=true"
It is necessary to install Wix Toolset before.
jpackage -t exe --name "FromGtoG" --vendor "Andrei Dodu" --app-version "7.0.2" --input "target" --dest "executable" --main-jar "fromgtog.jar" --icon "resources\icon.ico" --resource-dir resources --add-modules java.base,java.desktop,java.net.http,java.naming,java.sql,java.management,java.security.jgss,java.xml,java.logging,jdk.crypto.ec,java.security.sasl --win-shortcut --win-menu --main-class com.andreidodu.fromgtog.Main
jpackage --type deb --name "FromGtoG" --vendor "Andrei Dodu" --app-version "7.0.2" --input "target" --main-jar "fromgtog.jar" --icon "resources/icon.png" --main-class "com.andreidodu.fromgtog.Main" --dest "executable" --add-modules java.base,java.desktop,java.net.http,java.naming,java.sql,java.management,java.security.jgss,java.xml,java.logging,jdk.crypto.ec,java.security.sasl --linux-shortcut --verbose --linux-package-deps "libasound2, libpulse0"
jar tvf fromgtog.jar
sudo snap remove fromgtog && snapcraft clean && snapcraft && sudo snap install fromgtog_7.0.2_amd64.snap --dangerous && fromgtog
- Ubuntu 25.04
- Debian 10
- Windows 11
- MacOS
If you find this project helpful, consider sponsoring me 💚