I am fan of TortoiseGit on Windows as Git client. It displays icons on files and folders of the repository in file explorer which is easy to know the status. You can perform different repository operations in the explorer itself without open a standalone app for Git. Nowadays, I am using Ubuntu so much. So, I need the same in Ubuntu 18.
On googling, I found RabbitVCS. It is a graphical front-end for version control systems available on Linux and it integrates into file managers to provide file context menu access to version control repositories like TortoiseGit.
Installation:
sudo add-apt-repository ppa:rabbitvcs/ppa
sudo apt-get update
sudo apt-get install rabbitvcs-nautilus
Let's test a git cycle with RabbitVCS.
Git Clone:
Right click in empty folder and select RabbitVCS Git > Clone option
It will ask for repository URL and Destination path. After entering the information,click OK button. You will get completed status once it is done.
Git Options:
You will get files and folders with icon. For testing, I modified one file. On right click, you will get different Git options like TortoiseGit.
Git Commit:
Select Commit option in context menu, you will get a dialog to enter commit message and a list of files to be committed. You can double click on the file name to see the changes.
On OK click, you will get dialog to enter Name and Email first time, After that, you will get commit completed message.
Git Push:
Select Push option in context menu, you will get dialog to select remote repository and branch information with commit list.
If you get "Error: could not read Username for '[URL]': No such device or address", please refer Github issues of RabbitVCS like this and this.
OR
Goto directory in the terminal and set remote url including username and password:
git remote set-url origin https://{username}:{password}@github.com/{username}/project.git
OR
setup ssh keys for git as explained here.
Conclusion:
RabbitVCS fulfills the need of TortoiseGit in Ubuntu to a certain extent. Sometimes, it loads slowly in nautilus and the icons take time to show status, but overall good to use and to save time. Do let me know what git tool are you using on Ubuntu?