Forking and merging projects

Forking a project copies all of its files into a new, separate project, allowing for independent development and experimentation. Changes in the forked project can later be reviewed and merged back into the original project.

Forking

To fork a project, open the project overview and click Fork. Enter a name for the fork when prompted. You must be the project owner, or have access to the project as a contributor or results consumer in order to fork it. You can learn more about project roles and access control here.

 

Screen_Shot_2018-10-01_at_11.12.10_AM.png

 

copied to the newly forked project:

  1. All files
  2. Revision history of all files
  3. Environment variables

These things are not copied to the newly forked project:

  1. Run history
  2. Project settings, including collaborators and compute environment
  3. Launchers
  4. Discussion history

 

Projects that have been forked, or were created by forking another project, will link to related forks on the project overview page.



Screen_Shot_2018-10-01_at_11.18.00_AM.png

 

Merging

Once you've made some changes to the new fork, you can initiate a merge by clicking Request Review on the project overview page. You must be the project owner, or have access to the project as a contributor in order to request a merge review.

 

Screen_Shot_2018-10-01_at_11.37.42_AM.png

 

You will be prompted to submit a review request, in which you can review the changes and describe their effects with a message. Once submitted, contributors to the main-line project are notified. The merge will occur when a contributor accepts the review, and a new revision of the main-line project will be written with the forked changes merged in.

 

To view a history of Review Requests, including the status of current requests, select "Reviews" from the left-hand menu. 



Screen_Shot_2018-10-01_at_11.42.40_AM.png

Was this article helpful?
1 out of 1 found this helpful