Git that is common in version control.
Some people are thinking about migrating from Subversion.
I think whether it is necessary to move to Git.
Update of Subversion is not stopped !!
When you look at the Subversion site, the update release is still frequent.
If the update is stopped, we recommend to go to Git unconditionally. However, SVN is still actively active, so you probably wonder if you should migrate.
If you do not strict version control, you do not have to go to Git
In some cases, there may be environments that do not use branches too much. In addition, there are environments where the development scale is small and it is only necessary to have the latest resources in the shared repository for the time being.
In such cases, you do not need to migrate. In such an environment, we can not take advantage of Git 's advantage over Subversion.
Still it is better to use Git
About 4 years ago, I changed all my personal environments to Git. Still, there are still many uses of Subversion in the work environment.
There are times when you are using two version control software at the same time.
"Git is not stressful".
As I knew Git, I can not go back to SVN anymore. If we do not meet Git, we will still be using SVN. However, I already met Git.
Git does not need to memorize the meanings of trunk, branches, tags
Compared to SVN, Git is superior to SVN in its environment where intuitive operation like SourceTree can be performed.
What is trunk?
What is branches?
What is tags?
The basic learning time is less than SVN.
You can learn naturally while repeating intuitive operation. You do not have to go to a book store to buy a book.
More recently, conferences about Git are held in various places. It is much more efficient to participate and listen to it once. You will be able to get information on one book in just a few hours.
In addition, you will be able to remember a lot of things while using it.
If you are planning to introduce version control from now on and studying, you should begin with Git.
The flow of operation is organized in Git
In SVN, what is trunk, branches, tags? It starts from.
And I will study how to make trunk, branches, tags.
Let's version control with SVN. It will be the trend.
The use of branches and tags is largely left to the person who uses it.
In each environment there will also be rules that specify rules such as how to branch and tag. So, because it is a book or website, you need to learn how to properly use branches and tags.
In Git these parts are organized. SourceTree, which came out before, adopts a system called "GitFlow".
If you operate in line with GitFlow, you do not need to learn the correct usage of branches and tags.
In SorceTree, I never make original branches, tags thought.
Branches are created automatically in the operation of GitFlow. Just type the tag name in the text box. It may be uninformed.
In GitFlow, it is sufficient to remember the flow of operation. With SourceTree you can do that flow intuitively.
SVN risks extra time as a result
In SVN, executing commit directly changes shared repository. Therefore, if there is something wrong with the committed resource, it will cause inconvenience to all concerned parties.
As a result, the time for all concerned parties will be taken.
In Git, it is divided into a remote repository (shared repository) and a local repository. Therefore, the risk is mitigated.
Even if you commit in Git, you can do it locally. There is no need to worry about others, noticing something mistakes after committing and fixing. Even this alone will relieve stress considerably.
In Git, the act called commit in SVN is called "push". You can work at your own discretion unless you push.
Git has a host of hosting services
To build a version control system with SVN, you need expert knowledge as it is.
Git also needs expert knowledge, but there are many software and information that will help you work than SVN, so this would be better.
From the above, I think Git is better than SVN in terms of work efficiency.
There may be an idea that it can not be migrated because it takes some time to move from SVN to Git.
But will you continue working with stress all the time without putting a transition cost of several days?
And the migration over a period of one week, then earlier can work that does not take the stress.
If I choose, I will choose the latter.
In addition, there may be opinions that all workers take learning time and can not be migrated.
However, does the person who gets learning time of using Git really work in the first place?
Work is usually repetition of learning every day. Let's learn how to use Git. I think.
Also, the reason that I am busy is not a reason.
People who are really busy are learning day by day. And those people are so much dexterous.
The idea that I do not want to learn will cause inconvenience to surroundings.
However, the judgment of whether to shift or not depends on each circumstance to the last.