As we know, right now the usage of
Git is quite popular and the
Github profile has been name card for the developers. You can create your own project and update it. Also, you can work collaboratively with others with some open-source project. It has been a very convenient development tool for the software developers since its first release.
Compared with other Version Control Systems, such as
SVN (Apache Subversion) and
CVS(Concurrent Version System), Git is more powerful. This’s because of its distributed nature, fast operation and branch handling mechanism. The distributed system makes it easy and efficient for multiple developers to work together towards the same project.
Git works fast as its lightweight operations. Also every developer can work with the code as its own branch. Others can merge to different branches and this makes cooperation work quite easy. In addition,
Git is free and open-source.
In a common sense,
Git has various operations through the command line operations. So, someone may attempt to make a better usage of
Git, one that should be very familiar with the command line operations.
However, this is not true. The command line works well with non-GUI system, like *nix systems. But for other systems, you may want to operate on the GUIs. This could make your life much easier, without the need to remember so many command line instructions. Luckily,
Git provides multiple choices for you.
In this article, I’ll introduce a convenient
Git GUI I’ve been using, called GitKraken. In the following example, all are shown in MacOS EI Capitan Version 10.11.5 and the
Gitversion is 2.7.4. At the same time, you need to install GitKraken 1.5.2 or higher version.
2. Git GUIs
2.1 Built-in GUI of Git
Git, it comes with the built-in tools for committing and browsing. For committing, the
git gui is a Tcl/Tk based graphical user interface. It allows users to make changes to their projects. This could be achieved by making new comments, making changes to existed files, performing merges, etc.
git gui focuses more on commit generation and single file annotation. It doesn’t show the project history. However, it supports menu actions and could work on nearly all systems, like Unix, Mac OS, and Windows.
For the command, you can try with different ones, like blame, browser, citool and version. The blame command could start a blame viewer on the specified file on the given version. The browser command can start a tree browser, which could show all files in the specified commit. The files selected through the browser are opened in the blame viewer. The citool command could start
git gui and arrange to make one commit before exiting and returning to the shell. Note this operation is limited to one commit action only. Meanwhile, we can use the version command to show the current running version of the
Take blame command as an example, we can use the command of
git gui blame makefile. This command shows the content of the makefile file in the current working directory. Also, it provides annotations for both the original author of each line, and the one who moved the line to the current location.
gitk, it’s the repository browser for
Git. It could show branches, commit history and the file difference. It’s the utility started by the Repository Visualize actions of
2.2 Git GUI of GitKraken
Though a built-in component of
git gui is not that convenient to use. Luckily, there’s lots of third parties who work on the GUI for
Git, like GitX, Gitbox, SmartGit, GitKraken etc. These tools could be working for different platforms, such as Windows, MacOS and *nix systems. Also, some of them are free for usage, which makes them more convenient. The full list could be checked at this link https://git-scm.com/downloads/guis.
One of these GUIs is called GitKraken, which is quite powerful and convenient to use. First of all, it’s free. Then, it’s cross-platform and could be used in Windows, MacOS and Linux. Finally, it’s easy to operate on it and connect it with both
You can download it from the official site. Then, install it. Open the GitKraken, and connect your local repository with your
Github account. You can go to preferences/authentication/Github.com. Then input your
Github account user name and password. In the end, you may see successful connection like below:
One feature for GitKraken is that it can scan the
Git repository on your local machine. This could be very convenient. Then what you need to do is to go to a specific project, which you want to work on.
For example, you can make a simple readme file and initialize it as a
Git repository. Then you may update is for several times. For example, the initial content in the readme file is:
WXMs-MacBook-Pro:GitTreeViewExample WXM$ cat README.txt Hi there!
Then you can update it and add the name like below:
WXMs-MacBook-Pro:GitTreeViewExample WXM$ cat README.txt Hi there! I'm Steve.
Finally, I get something like below.
WXMs-MacBook-Pro:GitTreeViewExample WXM$ cat README.txt Hi there! I'm Steve. Nice to meet you here. It's easy to use Git. I'm in a test branch. I'm in a master branch now.
For the whole process of these updates, you may check out my other post on Git TreeViewer.
One feature for GitKraken is that it can scan the Git repository on your local machine. This could be very convenient. Then what you need to do is to go to a specific project, which you want to work on.
For example, coming back to the previous example. You can see all the information for each commit like below:
In addition, you can also find the basic information for your local and remote repository like below:
So, with these features of GitKraken, you can easily manipulate the operations of
Meanwhile, the official site of GitKraken provides a cheat sheet for users. You can download it from this link: https://www.gitkraken.com/faq.
In conclusion, multiple options could be chosen for
Git GUI. You may want to choose one of them and get familiar with it. This could make you
Git life much easier. Have fun with the GUIs!