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.
To fork a project, visit it in the UI and click "Fork this project" on the bottom left. Enter a name for the fork when prompted. You must own or be a contributor to the project in order to fork it.
COPIED to the newly forked project:
- All files
- Revision history of all files
NOT COPIED to newly forked project:
- Run history
- Project settings, including environment variables, collaborators, and compute environment
- Discussion history
You can quickly navigate between related forks via a dropdown menu on the bottom left:
When you're ready, you can initiate a merge by clicking “Request Review” at the bottom left of your window. You must own or be a contributor to the main-line project in order to request a review.
You will be prompted to submit a Review Request, in which you can document and explain changes to the project. Once submitted, contributors to the main-line project are notified. The merge is completed when a contributor accepts the Review.
You can view and comment on changes to individual files in the Files Changed tab. Clicking the dropdown arrow exposes a comments box. All comments are rolled up into the Discussion tab.
To view a history of Review Requests, including the status of current requests, select "Reviews" from the left-hand menu.