Git 2.24 New Features

What’s New in Git 2.24?

Git 2.24 is the latest version of Git software. Let’s check out what’s new in Git 2.24 features!

Developed in 2005 by Linus Torvalds, Git has received immense popularity among developers across the world. This is quite different from CVS and SVN centralized control systems. In the case of Git, it is completely distributer. That means the developers can store all the codes locally. Apart from this, this incredible platform comes with better support for merging, repository history rewriting, and branching. It facilitates multiple tools and workflows. So, Git now emerges as the most extensively used control system across the world. 

With time the platform goes through a lot of changes, and the company is releasing new updates frequently to make it more powerful. Now, the Git 2.24 version is here, and it comes with some powerful features. So, in this article, we will discuss the Git 2.24 features and some other things related to Git. Before going to the exploration of Git 2.24 new features, let’s understand how it actually works and some of its benefits

Also Check: List of Top DevOps Tools in 2020

Git – How It Works? 

We will not discuss this in detail here, but this basic overview will definitely make you understand the process. You can go through the complete Git 2.24 tutorial to know more about it. 

1. First, develop a project or repository using any Git hosting tool, for example, Bitbucket. 

2. Now clone or copy the project to the local machine. 

3. Insert a file to the local repository and save or commit the changes. 

4. Then push or move the changes to the master branch.

5. Change the file using any hosting tool and save.

6. Now pull the change to the local system.

7. Create a version, or in Git language, it is called a ‘branch.’ Now change the file and save it.

8. Open the pull request and merge the branch with the master branch. 

You can easily find the Git tutorial at the official site and can even download the file to understand the process step by step. 

Understanding the Benefits of Git

Git as a centrally distributed version control system brings so many benefits to the users. Let’s dive deep and understand the benefits of Git.

1. It is fast and small

When it comes to speed, Git performs much faster than others. As it doesn’t entirely depend on a central server, you don’t need to use the remote server while carrying out any operation. Git’s core part is developed with C language. That means it can effectively avoid the run-time errors related to the other different high-level languages. Another best thing about Git is that the client will enjoy a small repository data size. So, Git efficiently compresses and stores data. Well, the new update makes the process more efficient. 

2. Implicit backup

When you have multiple copies of your data, there is no need to worry about data loss. You can easily mirror the repository and can use them during the corruption of the disk or crash. 

3. It’s open-source and free 

It works under the open source license of GPL. So, for Git 2.24 download, you don’t have to pay any money. You can download it for free from its official site. Besides, as this is open-source software, you can even alter the source codes based on your requirements. 

4. Better security

Talking about safety, Git employs SHA1 or also known as a secure hash function. It uses this to identify and name the objects. Under this, every file and save is check-summed and obtained accordingly during the checkout. That means, those who don’t know about Git, can’t alter the file, and other data in Git environment. 

5. It doesn’t require any powerful hardware

Talking about CVCS, it requires a powerful central server to manage the entire team’s work. It will not cause any problem for a small team. However, when the size of the organization grows, the server’s hardware limitation can cause issues. However, in DVCS, you don’t need to deal with the server, except the time of pull and push changes. Some improvements for this are included in Git 2.24 new features

6. Easy for branching

The copying mechanism of CVCS as very cheap. When you create a branch, it copies all the codes to it. That means it is not efficient and also time-consuming. Moreover, branch merging and deletion in this is very complicated. But Git offers a very simple branch management process. Within just a few seconds or minutes, you can delete, merge, and create new branches.

New to Git? Read out our previous blog on Git Fundamentals and understand the basics of Git.

List of New Git 2.24 Features

Now, let us take a look at the important highlights in the new Git 2.24 features. First of all, it is essential to note that there have been many Git versions over the years. The latest version is the Git 2.24 that came in November 2019. Here is an outline of the new attractions that you can find with a Git 2.24 download.

  • Feature macros

Git is known for shipping with a configuration subsystem that helps in the configuration of various global or repository-specific settings. For instance, some of you may have had to set ‘user.name’ and ‘user.email’ settings while writing commit on a new machine. Generally, git config finds applications in the configuration of identity for committing with and selection of line endings.

The other applications include a selection of algorithms for the production of diffs and configuration of aliases to other Git commands. So, we can note that any Git tutorial would focus on the requirement of a single configuration change, such as enabling or disabling any of the above-mentioned functions. 

However, what if you don’t know about the configuration values that you should change? In such scenarios, you can opt for one of the new Git 2.24 features. The facility of feature macros in Git 2.24 helps in using one Git configuration for subsequently implying other configurations. The developers of Git handpick features that can help in selecting a particular feature alongside adopting a combination of settings. 

The settings would have to align with the characteristics of the concerned repository. For instance, if you have a large repository and there are certain slowdowns, then you can solve it by setting ‘index.version’ to 4. However, finding the ‘index.version’ can be a very tiring task. On the contrary, you can activate the ‘feature.manyFiles’ by using the following command.

$ git config feature.manyFiles true

With the help of the feature macros in Git 2.24 features, you can opt into features for smoother Git experience. You can show your will to adopt settings that can improve your user experience with Git. For example, the adoption of ‘index.version’ for path-prefix compression. Another notable highlight of the feature macros is the inclusion of any new release features that can support your use cases.

Preparing to become a certified DevOps professional? Check our DevOps Certifications Training Courses now!

  • New Changes in Commit Graphs

Commit graphs is one of the notable features that came with earlier Git versions. The demand for commit graphs is increasing gradually after their introduction in Git 2.19. Commit graphs, when activated and maintained perfectly, could help in finding out the degree of performance of loading commits. 

However, a new Git 2.24 tutorial would reflect on the facility of commit graphs enabled by default. As a result, you can witness an improvement in your repository when running ‘git GC’ next time. In the previous versions, the feature was just an opt-in alongside experimental ‘core.commitGraph’ configuration, and others. Now, after comprehensive testing, this feature is now ready for prime time. 

The modifications in commit graphs also bring in many other new Git 2.24 features. All the sub-commands of ‘commit-graph’ such as ‘git commit-graph write’ now provide support for ‘-[no-]progress.’ As a result, progress meters for the subcommands behave in a normal manner and write to a terminal only by default. In addition, respective ‘-[no-]progress’ also overrides any particular subcommand of the commit-graph. 

Another new entry among Git 2.24 features with respect to committing graphs is the addition of a new configuration value. The new configuration value helps in updating the ‘commit-graph’ file during the course of fetching. The new feature leverages commit-graph chains for writing a specific part of history on a commit-graph chain to facilitate compaction later. As a result, new commits from a remote immediately go into the ‘commit-graph,’ and you don’t have to wait for the next ‘auto-GC’. You can try this new feature by setting the ‘fetch.WriteCommitGraph’ configuration variable to ‘true.’ 

The new Git 2.24 features for commit graphs also include many bug fixes for improving the performance and reliability of ‘commit-graph’ commands. In addition, ‘commit-graph’ commands now have support for trace2, the latest tracing mechanism of Git. 

  • The Contributor Covenant

One of the most important additions among Git 2.24 features is the adoption of a code of conduct for contributors. The code of conduct to solidify favorable and inclusive behavior on a mailing list where Git development happens is promising indeed! Generally, email is the primary channel for communication between Git developers. As a result, new contributors could find it intimidating and unwelcoming due to a lack of awareness regarding the values of Git contributors. For long, the Git community has been following the policy of “be nice, as much as possible” for contributors. 

However, new contributors find it difficult to engage with a project without any specific values. The adoption of a code of conduct in Git 2.24 features provides a precise indicator of the restricted and allowed behaviors for the project. New contributors could refer to the “Contributor Covenant’. A project’s leadership enforces the code of conduct and manages non-compliance of any individual with the guidelines. New contributors should not worry about the credibility of this feature as the Contributor Covenant has been ‘Acked-by’ 16 renowned members of the Git community. 

  • New History Rewriting Tools

Git 2.24 release notes also reflect on alternative history rewriting tools like the new features in Git 2.24. The documentation for ‘git filter-branch’ is a common sight for users who have tried to conduct a complicated operation over the history of the repository. The ‘git filter-branch’ tool has been a powerful and widely-used tool for rewriting history. It can help in extracting history related to a particular directory or taking away a file from a repository’s history. 

However, the flexibility of rewriting history with ‘git filter-branch’ also involves a massive trade-off. The command is complicated in terms of usage and is very slow. In some cases, ‘git filter-branch’ can lead to unwanted changes such as data loss and repository corruption. Therefore, the new Git 2.24 features bring ‘git filter-repo,’ an independent tool, as a recommended replacement for ‘git filter-branch.’ 

The addition of ‘git-filter-repo’ in the Git 2.24 release notes presents new opportunities for addressing setbacks with ‘git filter-branch.’ ‘git filter-repo’ utilizes an effective, stream representation of history for faster operations. As a result, you don’t have to reprocess every commit in a specific order. The power of the ‘git filter-repo’ features alongside thorough documentation of all its capabilities improves its ease of use. The different applications of ‘git filter-repo’ could also prove the effectiveness of new modifications in the latest release of Git. 

‘git filter-repo –analyze’ is ideal for obtaining a human-readable selection of metrics regarding the size of a concerned repository. The metrics include the number of objects of each type, classification of the largest files and directories, and space consumption by extensions. In addition, Git 2.24 features also allow access to additional metrics regarding the shape of your repository through the ‘git sizer’ tool. The applications of ‘git filter-repo’ also involve the facility of filtering repository’s history for containing only specific paths with ‘–path-{glob, regex} and similar options. 

In addition, you can also run ‘find and replace’ operation on history along with strip blobs larger than a specific threshold. Upon rewriting history, any rewritten commits get a new SHA-1 for identification. ‘git filter-repo’ updates all references to SHA-1s just like other commit messages which reference them. Furthermore, users also get the option of rewriting names of contributors by leveraging ‘.mailmap.’ 

Preparing for Git interview? Here’re the top 50 Git interview questions with detailed answers to crack the interview!

Final Words

The Git 2.24 features in this discussion show considerable improvements over the previous versions of Git. In addition, Git 2.24 also includes many other updates and bug fixes to the previous version. Some of the unique functionalities of new features in Git 2.24 help in bringing uniformity to the Git community. If you want to learn more about Git features, check out our Git Fundamentals Training Course and broaden your skills.

The updates in Git 2.24 are primarily evident in the aspects of UI and Workflows alongside performance, development support, and internal implementation. Furthermore, the fixes in Git 2.24, such as correction of ‘git pack-refs,’ which can lose refs created while running, provide assurance of the smoothest experience of using Git.

About Dharmalingam N

Dharmalingam.N holds a master degree in Business Administration and writes on a wide range of topics ranging from technology to business analysis. He has a background in Relationship Management. Some of the topics he has written about and that have been published include; project management, business analysis and customer engagement.

Leave a Comment

Your email address will not be published. Required fields are marked *


Scroll to Top