Halaman ini belum tersedia dalam bahasa lokal Anda. Kami berusaha keras untuk menambahkan lebih banyak versi bahasa. Terima kasih atas dukungan Anda.
- What's New
- Function Overview
- Product Bulletin
- Service Overview
- Getting Started
-
User Guide
- Process of CodeArts Repo
- Purchasing CodeArts
- Accessing CodeArts Repo Homepage
- Environment and Personal Settings
- Migrating Code and Syncing a Repository
- Creating a Repository
- Viewing Activities
- Viewing Repository Statistics
- Configuring Repository Settings
- Hierarchical Repository Management
- Configuring a Repository
- Managing Repo Member Permissions
- Cloning or Downloading Code Repo to a Local PC
- Uploading Code Files to CodeArts Repo
- Developing a Workflow
- Creating and Configuring a CodeArts Project
- Committing Code to CodeArts Repo and Creating a Merge Request
- Managing Merge Requests
- Managing Code Files
- Security Management
- Best Practices
-
FAQs
- Authentication
- Member Permissions
-
Uploading and Downloading Code
- "Error: Deny by project hooks setting 'default': message of commit" Is Reported When Code Repository Is Pushed from the Local Host to CodeArts Repo
- Pushing Binary Files to CodeArts Repo Failed
- Error "'origin' does not appear to be a git repository..." Is Reported When the Git Push Command Is Executed
- Error "The requested URL returned error: 401" Is Reported When HTTPS Is Used to Clone Code in CentOS
- Error "Merge branch 'master' of https://test.com Please Enter a commit" Is Reported When Pulling Code Using the Git Pull Command
- Message "fatal: refusing to merge unrelated histories" Is Displayed
- How Do I Prevent Files Containing Secrets from Being Pushed to CodeArts Repo?
- Migrating Repositories
- Merge Request
- Fork Sync
- Repository Capacity
- FAQs
-
API Reference
- Before You Start
- API Overview
- Calling APIs
-
APIs
- SSH Key
-
Repository
- Obtaining Files in a Branch Directory
- Obtaining Repository Statistics
- Obtaining Image Files of a Specific Branch in a Repository
- Modifying the Status of a Repository Referenced by a Pipeline
- Checking Whether a User Has the Repository Administrator Permission
- Setting a Repository to Public or Private
- Obtaining the Content of a Specified File in a Specified Branch of a Repository
- Obtaining a Public Template List
- Creating a Repository
- Obtaining a Repository Short ID to Generate the Details Page URL
- Querying a Commit of a Branch by Repository or Repository Group Name
- Querying Branches of a Specified Repository
- Querying a Commit of a Repository Branch by the Repository ID
- Adding a Deploy Key
- Deleting a Deploy Key
- Obtaining the Last Commit Statistics of a Repository
- Repository Statistics
- Deleting a Repository
- Viewing a Repository Creation Status
- Querying the Tag List of a Repository
- Adding a Tag
- Querying Details About a Repository
- Obtaining the number of committed code lines
- Downloading a Repository
- Creating a Protected Branch
- Deleting a Protected Branch
- Deleting Protected Branches in Batches
- Creating a Protected Tag
- Deleting a Protected Tag
- Obtaining a Repository Branch List
- Obtaining the MR List of a Repository
- Obtaining MR Details of a Repository
- Obtaining the Repository IP Address Whitelist
- Adding the Repository IP Address Whitelist
- Modifying the Repository IP Address Whitelist
- Deleting the Repository IP Address Whitelist
- Obtaining the Changes of an MR
- Associating a Repository with a Member Group
- Locking a Repository Based on the Repository Short ID
- Unlocking a Repository Based on the Repository Short ID
- Approving an MR
- Obtaining Associated Work Item Information
- Obtaining Reviewer Information Based on the Repo Short ID and Merge Request Short ID
- Obtaining the List of Changed Files
- Tenant
- Group
- Project (V2)
- RepoMember
- Commit
- File
- User
- Webhook
- Project
- Repository Management (V2)
- Review
- Application Examples
- Appendix
- Videos
- General Reference
Copied.
Forking a Repository
Application Scenarios
The fork function can be used in large-scale projects with multiple sub-projects. You can fork a repository (an image) based on a repository and merge the CRs in the image to the source repository. When there is no merge, the modification of both the image repository and source repository will not affect each other.
As shown in the following figure, the complex development process occurs only in the image repository and does not affect the project version repo (source repo). Only the confirmed new features can be merged back to the project version repo. Therefore, fork is a team collaboration mode.
Differences Between Forking a Repository and Importing an External Repository
Both forking or importing a repo is a process of replication. The main difference lies in the association between the source repository and the copied repository. The details are as follows:
- Fork
- Forks are used to copy repositories on CodeArts Repo.
- A fork generates a repository copy based on the current version of the source repository. You can apply for merging changes made on the fork to the source repository (cross-repository branch merge), but you cannot pull updates from the resource repository to the fork.
- Import
- You can import repositories of other version management platforms (mainly Git- and SVN-based hosting platforms) or your own repository to CodeArts Repo.
- An import also generates a repository copy based on the current version of the source repository. The difference is that you can pull the default branch of the source repository to the repository copy at any time to obtain the latest version, but you cannot apply for merging changes made on the repository copy to the source repository.
Forking a Repository
- Access the repository list page.
- Click a repository name to go to the target repository.
- Click Fork in the upper right corner. In the displayed Fork Repository window, set parameters by referring to the following table.
Table 1 Fork repository parameters Parameter
Description
Project
Mandatory. Target project of the new repo. You can select a project name from the drop-down list.
Path
Optional. Target repo group path of the new repo. You can select a repo group path from the drop-down list.
Repository
Mandatory. Start with a letter, digit, or underscore (_). You can use letters, digits, hyphens (-), underscores (_), and periods (.). Do not end with .git, .atom, or periods (.).
Visibility
Mandatory. Indicates the visible scope of the source repo. The options are as follows:
- Private: Only members of this repository can access it and commit code.
- Public The value can be For project members, For tenant members, or For all guests.
Synchronize commit rules of the source repository
Optional. Indicates whether to synchronize the commit rules of the source repo. This option is selected by default, which means the source repo commit rules are synchronized. You can choose Settings > Policy Settings > Commit Rules to view the rule settings of the source repo and determine whether to select it.
- Click OK to fork the repository.
Checking the Fork Status of the Current Repo
- Access the repository list page.
- Click the source repository name.
- Click the number after Fork in the upper right corner of the page to view the list of forked repositories, as shown in the following figure. The current source repo is forked only once. Click the name in the Fork repo name column to go to the Code page of the forked repo.
Merging Changes of a Fork to the Source Repository
- Access the repository list page.
- Click the name of the forked repository.
- Click the Merge Requests tab.
- Click Create MR. On the Create MR page that is displayed, select a source branch and target branch to be merged.
- Click Next. On the Create MR page, set Title and Description, and click Create MR.
A cross-repository MR belongs to the source repository and can be viewed only on the Merge Requests tab of the source repository. Therefore, reviewers, scorers, approvers, and mergers must be members of the source repository.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot