Teamwork and progress control are the lifeblood of a development company, and failure to deliver projects on time is frowned upon in many organizations. Arrive at a new company and discover that your company has built its own code hosting system? From now on, you not only have to write code diligently every day, but also have to be prepared to deal with all kinds of hardware and network failures, and one day your boss may change another service provider, “taking the blame” may become a normal situation, and the boss needs you to be responsible for the results.
As the core assets of the enterprise information code, is the crystallization of the wisdom of the development team, the self-built code management system or choose the cloud platform has become a hesitation in everyone’s mind, then what factors need to consider the self-built?
What do self-built code hosting systems need to do?
1. Choose open source software
Git family of GitLab, it provides perfect user authority management, in addition to cover all the functions of Git, but also provide convenient background management. There are CE (community version), EE (enterprise version), OM (RPM package complete version) three versions, the prevailing choice of developers on the market is to use CE version of the source code, low cost and relatively convenient.
However, the construction of GitLab, although the corresponding method is provided in the official document, but in the actual operation process, it is not so smooth, from the installation of dependencies to the introduction of YUM source, this process has many pits, requires special maintenance and version update, to ensure normal use.
2. Hardware facilities
If it is for small and medium-sized enterprises, the cost of self-built computer rooms is generally higher, and there will be the following problems:
- The high requirements and complexity of the construction process require a lot of money and time cost;
- There are some defects in the core bandwidth line resources, such as low rated traffic, low network load, poor link stability and inability to realize multiple lines.
- Erratic power supply can easily cause disk corruption, which can lead to code loss.
So unless it is a large group enterprise, generally will not go to build their own computer room. Now there are too many cloud server manufacturers in the market, the average price is more than 5000 yuan/year, various packages and various “discounts” make people a little dazzling, use also need to deal with all kinds of possible hardware and software failures.
3. Self-built code management system you may encounter pits
In summary, if it is a self-built code management system, the following problems may be encountered from software to hardware:
- People who are very familiar with GitLab construction are required to be responsible for maintenance;
- The need to buy a separate server, not to mention the cost, in a complex market to select, but also to deal with all kinds of possible hardware and network failures;
- A separate Internet line is needed to facilitate access to code by employees outside the company, which is not suitable for enterprises with remote or outsourcing teams;
- Need to pay attention to all kinds of vulnerabilities and bugs of code management software and update immediately;
- It is difficult to deal with the malicious damage to the code warehouse from inside the company, which may lead to deletion and running away.
From the traditional IDC to the era of cloud computing, how should we manage the code?
In 2018, cloud computing has become the most important infrastructure in the world, and traditional IDC is on the wane. Today, there is no need to shop around to buy a server, find a room, and deal with daily hardware and network failures. With cloud computing, all of this can be done online, making it easy to manage while also improving the overall development efficiency of the team. Let’s talk about the advantages of cloud platforms from the perspective of enterprise code security, which is of most concern to everyone.
1. Code storage
Whether we build our own systems or use cloud platforms, code is ultimately stored on storage devices. Reliable storage is the first element of code security, and we do not want to lose code due to hardware failures.
> Hardware
Cloud platforms usually have professional computer rooms. Due to their professional characteristics and familiarity with the upstream and downstream industry chains, unit costs are greatly reduced and huge investment is made in power supply system, cooling system, bandwidth resources and other aspects, which are unmatched by general enterprise computer rooms. Cloud platforms are generally more secure in terms of hardware.
> Storage mechanism
Professional code hosting platforms typically have multiple stores and regular backups. In the event of a hardware failure, redundant storage devices ensure that data is not lost and can be restored from the backup data. However, if the enterprise scale is small, the internal code storage system is not sufficient to ensure reliable storage mechanism.
> Maintenance
To keep the machine room running properly, it has to face complicated details and a large number of uncontrollable factors, from network deployment, application requirements, equipment depreciation, safe disaster recovery and other business requirements to temporary power outages, server outages, network failures and other emergencies. In this respect, the professional advantages of cloud platform are obvious.
2. Code permissions
After ensuring that the code is stored reliably, permissions are our top concern.
The average enterprise has a variety of projects, and who can access which projects must be strictly defined: who can submit code? Who can only read code? Who can look at code but submit Bug issues?
Self-built code hosting systems are generally built by open source projects (such as Gitlab), but open source projects are generally relatively simple in terms of permission control, for example, they can only control whether a user has access to a project. Development costs are too high to implement fine-grained permission control.
Permission control is usually one of the important value-added services of code managed cloud platform, and a large amount of development resources will be invested to meet user needs and ensure availability and ease of use.
3. Code leaks
This problem is also of great concern to many enterprises – how to prevent my code from being maliciously leaked.
There are several possible ways for code leakage:
> Project members
The problems are most serious if project members leak project code — because project members understand the code and have read and write access to it. Therefore, it is difficult to control project members’ active code leakage, which can only be solved from the management system and legal level of the enterprise.
Company employees (not project members)
In fact, enterprise internal network security is usually not ideal. Lax authority management and confusion are common.
For companies that build their own code systems, although the system is set up, non-project members do not have access to project-specific code. However, if the code system is built inside the enterprise, it is very easy to access all the code directly through the internal network. Using a cloud platform can effectively avoid this possibility.
> System vulnerability
Enterprise to build code hosting system generally USES the open source software (e.g., Gitlab), but it is well known that open source software often also exist some loopholes, although hole repair also soon, but because the enterprise internal to the maintenance of the system are generally part-time workers, there is no guarantee that the first time to fix, is likely to cause others to use access to sensitive information.
Although cloud platforms have the same problem, they often have dedicated operations staff, which reduces the risk of bugs.
> code hosting platform
From the above points, for small and medium-sized enterprises, as well as the development teams of large enterprises, the cloud platform hosting code is actually a less worried and safer choice, compared with the advantages of independent building system is very obvious.
So the only thing we need to worry about is, will hosting code in the cloud be compromised?
Security measures, internal management measures and protection measures for users’ rights and interests of the cloud platform are all factors that need to be considered.
Therefore, when choosing a code hosting cloud platform, we should choose a reliable and neutral service provider with good reputation guarantee.
What help can the code cloud bring to your code hosting?
Enterprise self-built code management system facing the traditional IDC era of all kinds of troubles is open source China code cloud platform to help you solve the problem:
- 5 years of accumulation, 200W + developers, 300W + managed projects, you deserve to rely on the code management platform
- Code Cloud Enterprise edition provides different levels of packages to meet the needs of enterprise collaboration development of different developer sizes, as low as 1998/year;
- Very flexible permission control to ensure code authorizes access;
- Professional engineers have years of experience in Git system to ensure the stability and reliability of the system;
- Provide enterprise code warehouse snapshot service, can be at any time to restore the maliciously damaged warehouse;
- Sign service contract and provide service invoice to ensure safety and reliability.
Let’s take aliyun host as an example :(hard cost) purchasing an ECS server with 2 cpus, 4G memory, 1T storage and 5mb bandwidth, the cost is about 6000/ year. (Soft cost) In addition, a developer concurrently works for system maintenance, accounting for 10% of his working time. This cost is not low in itself, but it is the least important. Since he is not a professional Git engineer, he has limited experience in dealing with system vulnerabilities and docking, once a security problem occurs, the loss is hard to estimate. Another pressing issue is internal security. I have seen clients where internal employees deleted the code repository and left the company, which could lead to incalculable losses.
If you are encountered so some pit, it might as well try the code cloud, and China Merchants Bank, China Merchants Securities, super picture software, Kyushu Teng cloud, people’s Posts and Telecommunications Press, National University of Defense Technology and other thirty thousand enterprises with the code cloud to manage your code.
WeChat
Sina Weibo
share