Git history graph compared to SVN history graph -


I am trying to understand the difference between a GET and SVN graph. Example: GET History Graph:

Example SVN History Graph: For example,

I do not really know how to apply that knowledge - my sees like.

here:

It states that: Em> Second-generation tools seem to be a repository history as a line

But it really does not fit with the above SVN example of history graph - either SVN is not the second generation equipment or article is wrong. Can someone help clarify the above?

The difference is that, in SVN, everyone is always the same sequence sequence in SVN, one Completely up to date working is a defined thing, and it always orders like nodes.

In Git, a repository can be completely "up-to-date" for any other repository but after a certain point in the shared history, the third repository may have a completely different set of nodes.

In other words, if I make version 5 in SVN, chronological order is version 4, then finally everyone on the project will have to see the same version 5. I know that version 3 came before version 4 and that any version 5 might not possibly be 'I will need to merge. Everywhere, every work of 3-4-5-5 'will always be in the copy.

But if I'm creating version 397afeg815, and have already made the version chronologically, then in devices distributed like git or mercurial 8290e7ab8f, which does not tell me anything, that version 839eabcdef7 where Can fall, and any person in China may have created only 9876543231abc version which comes only after 8290e7ab8f. The branches of trees here, it is not linear; There is no defined order beyond parental relationships, unlike SVN where there is a parent in every commitment, and most of the children (in the same branch), many parents and one in a branch in Git or Mercury There may be many children in the branch.

When SVN branches, this is a deliberate choice, and all people will see the branch at the same point, and there is no question of which row of development is moving ahead of the trunk. Git and Mercurial and other similar systems potentially create a new branch with each single commitment, and whether any are on the committed "trunk", it relies entirely on the development process of a team or even Whom are you asking. > Editing for more clarification

There is a difference between true DAG like GIT or Mercurial, and there is a "linear" history like SVN; You can re-arrange the nodes as you think fit. You will still have the same history, depending on what you put in the bridge / commit / things, you can actually see many different variations of DAG in their own stores. The sequence of nodes does not make any difference, only because of the parents' relationship.

The history of SVN is different, the only way to see the SVN tree is version 2 always follows version 1. Version 3 always follows 2 versions. There is no question that what has happened to the "linear" history of sequential things is not to change the order of nodes, in case of SVN, this branch crosses the boundaries too.

Comments

Popular posts from this blog

php - PDO bindParam() fatal error -

logging - How can I log both the Request.InputStream and Response.OutputStream traffic in my ASP.NET MVC3 Application for specific Actions? -

java - Why my included JSP file won't get processed correctly? -