Tips from the experts on getting more from Git

Tip 7: In Memoriam Mercurial

Veteran developer Lenz Grimmer wrote: "Our team is involved in the development of the Ceph management solution openATTIC and its successor, the Ceph Dashboard. We migrated our openATTIC code repository from Mercurial to Git in April 2017 [13]. As former Mercurial users, we missed a few commands in Git, which we reverse engineered as aliases in ~/.gitconfig." See Listing 3 for some of our favorites.

Listing 3

Useful Aliases for Mercurial Users

 

Tip 8: Spring Cleaning

Stephan Müller integrated the function from Listing 4 into his zshrc to make life easier with Git and submodules. But be careful, this function will clean up completely and irretrievably. After this command, all submodules are as clean as after a new clone process!

Listing 4

Cleaning up the Submodules

 

Tip 9: git-vimdiff

Matt Oliver mentioned the benefits of git-vimdiff [14]. In addition to the normal vimdiff, which can also be connected to Git, git-vimdiff (Figure 4) offers each file in a separate tab. Vim users can conveniently scroll back and forth through them. "I use this so often now: Every time I go through a new patch set in Gerrit or GitHub, I just jump into the branch and call git vimdiff HEAD~." You can then go through the diffs one by one and read the reviewer comments in parallel.

Figure 4: SUSE developer Matt Oliver calls git-vimdiff "one of the most productive git hacks I use regularly."

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Tree View

    Complex Git projects sometimes require a better view of the dependencies and branches. Several tools offer GUI options for Git. We take a look at gitk, gitg, git-gui, and GitAhead.

  • Remote Git Repositories

    Software projects often comprise several code branches, some of which exist in parallel. Git supports community code development through remote repositories and code branching.

  • Git Hooks

    The pre-commit framework lets you automatically manage and maintain your Git hook scripts to deliver better Git commits.

  • Etckeeper

    Etckeeper keeps order in global configuration files and prevents problems with accidentally deleted files.

  • Version Control with Git

    The Git version control system is a powerful tool for managing large and small software development projects. We'll show you how to get started.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News