Difference between revisions of "External contribution integration"

From Software Heritage Wiki
Jump to: navigation, search
m
m (Simplify not using footnotes as i did not find out fast enough)
Line 1: Line 1:
 
= How to integrate external contribution =
 
= How to integrate external contribution =
New external contributions are starting [1].  Here is the current team
+
New [https://forge.softwareheritage.org/D301 external contributions are starting].  Here is the current team
workflow defined.
+
workflow defined on how to integrate them:
  
We should:
+
* Review the diff and explain what's need adapting
  
* 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
  
* Accept the diff if ready [2]
+
signed the [https://wiki.softwareheritage.org/index.php?title=Contributor_License_Agreement CLA]
  
 
* Integrate the patch using [https://wiki.softwareheritage.org/index.php?title=Arcanist arcanist]:
 
* Integrate the patch using [https://wiki.softwareheritage.org/index.php?title=Arcanist arcanist]:
Line 25: Line 25:
 
     git branch -d $BRANCH_TO_MERGE
 
     git branch -d $BRANCH_TO_MERGE
 
     git push
 
     git push
 
----
 
=== Footnotes ===
 
 
[1] https://forge.softwareheritage.org/D301
 
https://forge.softwareheritage.org/D302
 
 
[2] We should only be able to accept it if the contributor has already
 
signed the [https://wiki.softwareheritage.org/index.php?title=Contributor_License_Agreement CLA]
 

Revision as of 10:02, 14 June 2018

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