tencent cloud

CODING Code Repositories
A secure, fast, and convenient Git/SVN code repository service
Overview

CODING Code Repositories (CODING-CR) is a cloud-based convenient code management tool. It aims to deliver a simple and efficient development experience to more developers and fully supports Git/SVN code hosting with various features such as code review, branch management, and ultra-large repository.

Benefits
High Repository Availability
CODING-CR provides high-performance remote code repositories and unlimited distributed cloud computing and storage resources that can be managed in both the Git and SVN methods. Its cloud-based high-availability environments guarantee the security of your data, and its local services deliver a faster user experience and support upload and download at unlimited speeds.
Code Review
CODING-CR allows developers to create a merge request after writing code in order to invite other developers for code review. Code can be reviewed line by line, which delivers a wonderful code reading and review experience, helps establish an all-around code review mechanism, effectively reduces the number of code errors, and improves the code quality.
Release Management
CODING-CR enables git-based version management. Specifically, it allows you to package and release code at a certain node, with each version corresponding to a tag. You can select the latest code of a branch to release a version, automatically generate a changelog, standardize the version number, and associate it with task milestones, which makes source code release and delivery more standardized and efficient.
Code Browsing
CODING-CR delivers a great code browsing experience in which code can be browsed in an up/down or left/right comparison mode. In this way, you can clearly see the code lines before and after each modification, understand how many lines of code are modified, and comment on and discuss each modified line. This presents every single code modification comprehensively and distinctly.
Branch Protection
CODING-CR supports the granular management of code branches and the refined management of team member permissions. It allows configuring branch admins so that only authorized team members can make changes and specific branches can be protected from being tampered with by unauthorized members, making team collaboration more standardized and orderly.
Code Scanning
CODING-CR can identify potential security vulnerabilities, code defects, and non-compliant code snippets by analyzing the source code, automatically generating an issue list, and providing troubleshooting suggestions, which improve the code quality, reduce post-release risks, and simplify maintenance.
Features

You can use the Git and SVN repositories offered by CODING-CR to manage code through the provided web UI and various Git or SVN clients.


Code Browsing

On the code browsing page, you can read the code of different branches or versions and create, upload, download, and edit files in code repositories.


Branch Management

On the branch management page, you can create, download, and delete branches, modify the default branch, and set the protected branch.


Code Version

Tag management and version release features are provided for code versions. You can create tags based on commits and release versions based on tags.


Code Comparison

Code comparison allows you to review the code, and the system will detect whether the compared versions can be automatically merged or not.


Merge Request

In the R&D management process, in order to facilitate concurrent development by different developers in the project team and ensure high code quality, you can set the master branch as a protected branch on which all developers write code. After completing development, the developers can submit merge requests to the master branch. After the code is reviewed and the merge permission is granted, developers can merge the development branches into the master branch.


Code Review

You can restrict the code merge permissions and review and authorize code before the code is merged.

You can view the commit history, record and compare changes, and comment on the code line by line. The review comments can be displayed and communicated through email.


Git and SVN Repository Support

- CODING-CR supports free switching between Git and SVN as well as Git/SVN coexistence so that the written code can be reviewed and approved by team members before being merged into the master branch. Plus, it allows configuring automated tools such as continuous integration to check the code style and quality for supplementary review.

- You can clearly view the permissions of each branch, set branch operation permissions for team members, perform accurate and effective management, and enhance the collaboration security and smoothness.


Multi-Repository Code Storage

A project may need to support multiple repositories. Such repositories coexist in parallel, where the operations in each repository don't affect operations in other repositories and CODING-CR operation permissions can be configured for them separately.


Code Repository Permission Control

Different access permissions such as read/write and read-only can be set for users, and CRUD permissions can be set at the code file level to achieve refined permission management and improve the security of code repositories.

Scenarios
CODING-CR supports Git and SVN modes for code management and features commit history, code comparison, branch protection, and public key deployment to assist R&D teams in efficiently managing code resources.
CODING-CR supports code review so that the written code can be reviewed and approved by team members before being merged into the master branch. Plus, it allows configuring automated tools such as continuous integration to check the code style and quality for supplementary review.
With the aid of CODING-CR, you can clearly view the permissions of each branch, set branch operation permissions for team members, perform accurate and effective management, and improve the security and smoothness of collaboration.
Success Stories
Fudan University
Foxconn
Dida Chuxing
ZEGO
MOCKINGBOT
CMGE
C-life
Gengmei
BOCOM Schroders
Mininglamp Technology
BestSign
Lakala
FAQs

What repository types does CODING-CR support?

CODING-CR currently supports two repository types: Git (recommended) and SVN.


What code repository permissions are supported?

For Git repositories, CODING-CR supports fine-grained permission control for repository read/write access, MR merge, branch admin, protected branch, LFS lock, code version management, and more. For SVN repositories, it only supports repository access control.


What is Git LFS?

CODING-CR supports the Git Large File Storage (Git LFS) extension. Please use Git LFS to commit large files during encoding so that large files don't occupy Git repository storage space. Theoretically, there is no upper limit to the size of a single file that can be committed.


Do all projects need README, open-source license, and .gitignore files?

We recommend you create a README file and select the corresponding open-source license and .gitignore files for more effective project management when creating a project. You can also make choices based on your needs.


What should I do if an error occurs while cloning code?

If an error occurs during code cloning, please make sure that your permissions in the project are not restricted, you have installed and used the latest version of the official Git client, and the remote URL (case-sensitive) is correct. You can also try the SSH address for cloning.


How do I configure an SSH public key?

CODING allows you to access Git repositories over the SSH protocol and provides SSH public account key and SSH public deploy key settings. You can configure a public account key to get read/write access for all repositories. You can also configure a public deploy key in the project settings to get read-only access for a single project repository.

CODING-CR provides SSH public account key and SSH public deploy key settings. They are essentially the same, but their association methods are different. For the same SSH public key file, if it is associated with a CODING-CR account, it is called a public account key and has read/write access for all projects under the account; meanwhile, if it is associated with a specific project, it is called a public deploy key and has read-only access for the project by default.


- Steps for adding a public account key:

1. Type "open ~/.ssh" in the terminal, open the "id_rsa.pub" file with a text editor (the default name of the generated public key is used here. If you use a different name when generating the public key, just open the corresponding file), and copy all the content;

2. Log in to the CODING-CR console, go to the "SSH Public Key" page, and click "Add Public Key";

3. Paste the content copied in the first step into the "Public Key Content" section and enter a custom public key name;

4. Set the validity period of the public key. You can select a specific date or make it valid permanently.


- Steps for adding a public deploy key:

1. Type "open ~/.ssh" in the terminal, open the "id_deploy.pub" file with a text editor (the public deploy key here is named "id_deploy.pub". You can also customize the name when generating the public deploy key), and copy all the content;

2. Log in to the CODING-CR console, go to the target project, and click "Settings" > "Public Deploy Keys" > "Create Public Deploy Key";

3. Paste the content copied in the first step into the "Public Key Content" section and enter a custom public key name;

4. Click "Create" and enter the account password to successfully add the public deploy key.