How to see the git merge picture

06-15-2023

With the popularity of Git in software development, how to use Git reasonably has become one of the problems that programmers must face. As an important way in the Git tool, the Git merge graph can help us understand the merge situation of the code more clearly and effectively resolve merge conflicts and other issues. So, how to understand the Git merge graph? Next, we will interpret the meaning, basic shape, and related operations of the Git merge graph itself.

1. The meaning of Git Merge Graph

Git Merge Graph (Git Merge Graph) is a visual tool for displaying merge records of Git code base. It graphically represents the history of each branch as an independent branch, showing the source, destination and related details of each code commit. The Git merge graph can easily show the relationship between multiple branches, as well as demonstrate the cross-merging of code between different branches.

Second, the basic shape of the Git merge graph

There are two basic shapes of the Git merge graph: horizontal merge and vertical merge.

  1. Horizontal Merge

Horizontal Merge refers to the merger of multiple branches at the same point in time. On the Git merge graph, the horizontally merged trunk will move to the right, the branch will drift to the left, and the codes of different branches will be merged on one node, as shown in the figure below:

2023052017340370379.jpg

In this example, the branch feature was modified differently at two time points A and B, and at point C, the branch feature was merged horizontally to the trunk. Point C includes both the modified content of the A and B branches, as well as the modified content made by the feature branch.

  1. Vertical merging

Vertical merging refers to the merging of a single branch at different points in time. On the Git merge graph, the trunk of the vertical merge is still in the center, but the branch will have different bubbles at a point in time, as shown below:

1-2306151423212D.jpg

In this example , the trunk drags from left to right. The feature branch is modified differently at point A and point B, and then vertically merged into the trunk respectively, and finally the modification of the two branches is merged at point C. We can see that the relationship between the feature branch and the trunk is always kept separate, which can show the modification history of each branch more clearly.

Third, the related operations of Git merge graph

  1. View merge history

To view the merge history of Git merge graph For logging, you can use the Git command line tool or the GUI tool. Enter the following command in the command line terminal to view the Git merge record:

git log --graph

This command will output the merge history of Git, and use ASCII characters to representMerged structure. If you want a more concise and readable format, you can use the following command:

git log --graph --oneline

This command will output a more condensed Git merge graph, ASCII characters will be more clearly visible.

  1. Resolve merge conflicts

In the merge operation of Git, some merge conflicts are often encountered, which need to be resolved manually . The operation of resolving merge conflicts can be done using visual Git tools. For example, using the Git Kraken GUI tool, different versions of a file can be compared and merged by simply clicking on a conflicting file.


Using the above operations to resolve merge conflicts can resolve merge issues more quickly and efficiently.

Conclusion

Through the introduction of the above content, we can see the important role of Git merge graph in code merge and related basic shapes and operations. By mastering the Git merge graph, we can more clearly understand the source, destination and related details of each code submission, avoid merge conflicts and errors, and thus improve the efficiency and quality of code development.

Copyright Description:No reproduction without permission。

Knowledge sharing community for developers。

Let more developers benefit from it。

Help developers share knowledge through the Internet。

Follow us