Version Control issues in software development

Source: Internet
Author: User

// Version Control of software is a problem starting with the concept of software development. With the development of large-scale teams increasing, version management and control problems become urgent and important. Therefore, software version control problems are not managed by software at the beginning, and it is not necessary to manage software development in the future. However, the use of version control software is indeed the trend of the times, and it is almost a problem that cannot be bypassed.

// There are a lot of version control software, and the popular ones are CVs and SVN. SVN is a rising star and there is a tendency to replace CVs.

// Version Control Error awareness: a person's micro-software workshop cannot use version control software.
Explanation: The concept of version control cannot be bypassed, and version control software can be used completely. However: 1. Version Control Software is completely usable by one person, rather than thinking of it when the team develops it; 2. Even if a person develops software, version control software is used to manage the code, it will also bring great benefits.

// Version Control Error awareness 2: The version control system can only be built on an independent machine.
Explanation: the popular version management systems for CVs and SVN are indeed mainly used in the C/S mode, but they are not managed by browsers, for example, SVN can remotely manage the WWW Service Mode SVN through the WebDAV protocol. You can also directly browse the content in the version library through a browser.
However, this does not mean that the version control system must/must be constructed on an independent machine. Actually:
1. The version control library can be created on its own machine (local version Library) and used by itself.
2. To build a version control system, you do not have to use specialized SVN server software. Now, the "Turtle SVN client" can be used as a client to work with SVN server (for example, visualsvn server, it can also provide services to build a fully functional, locally managed version control system.

// Version Control Error awareness 3: With version control software, there will be no version problems.
Explanation: Absolutely not! Version control software is introduced to assist in management because version control is too complicated. Note: Here I am talking about "auxiliary "! People will always be the most important and dynamic factor in software development and management. software will always be the slaves and tools of people.
Note that the version management software can only manage and coordinate code problems at the text level, such as conflicts, mergers, updates, and so on. Correcting program logic errors is not a problem at all! This means that even if everyone in the team and "SVN" recognize the code you write, the Code is not necessarily available after being exported and released to the customer.

// Version Control Error awareness 4: With version control software, programmers in the software team do not have to spend time communicating.
Explanation: Error! Version Control Software can never replace communication. Moreover, communication is often at the logic and business layer, and version management software cannot do anything about these tasks. In fact, even under the management of the version control system, programmers should try to notify other programmers as much as possible after some code modifications, instead of relying entirely on the log of the version control system, this reduces the chances of resolving code text conflicts. Solving version conflicts is one of the most important and complex functions of the version control system. It can help us solve problems, but the ultimate solution is people, which requires time to communicate with people, that is to say, the cost is required.

// One of the tricks of Version Control: not all files in the project must be included in version control. Data Files in software tests that do not require control and management by programmers are large in quantity and large in bytes. It is not necessary or allowed to be included in the version control system.

// One of the few tips: Why is version management software used?

1. Do you work in a team?
2. Has this happened? When you are modifying a file, others are also modifying it? Have you lost any modifications you made?
3. Have you saved a change and want to restore the file to the previous state? Have you ever wanted to see the status of a file at a certain time point before?
4. Have you ever found a bug in the project and want to investigate when it was generated?

If either of the above answers "yes", it is necessary to use the version management software.

// Knowledge 2: Some people say that the svn management client is the tortoise SVN software, isn't it?

This is incorrect. "The tortoise SVN client is the svn management client" is correct. The reverse conclusion is incorrect because there are many SVN management clients, "tortoise" is just a very popular one (of course excellent ). In fact, if necessary and possible, you can also develop your own SVN client. The question is: is it necessary? Can you?

Author: Zhang Qing (mesh)
From mesh horizon: http://blog.why100000.com
Why 100,000 computer learning networks: http://www.why100000.com

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.