External contribution integration

From Software Heritage Wiki
Jump to navigation Jump to search

How to integrate external contribution

New external contributions are starting. Here is the current team workflow defined on how to integrate them:

  • Review the diff and explain what's need adapting
  • Accept the diff if ready. We should only be able to accept it if the contributor has already signed the CLA
   cd /path/to/<repository-concerned-by-diff>
   PATCH_NAME=<patch-name>  # use the right patch name D301 for example
   CONTRIBUTOR_NAME="<contributor-name>"  # use the right contributor's full name
   arc patch $PATCH_NAME
   # this will create a local commit amend the commit message if
   # necessary (added a `Close <concerned-task>` for example)
   echo $CONTRIBUTOR_NAME >> CONTRIBUTORS
   git add CONTRIBUTORS
   git commit -m 'Update contributors file'
   git checkout master
   BRANCH_TO_MERGE="arcpatch-$PATCH_NAME"
   git merge $BRANCH_TO_MERGE
   git branch -d $BRANCH_TO_MERGE
   git push