Difference between revisions of "External contribution integration"

From Software Heritage Wiki
Jump to: navigation, search
m (Improve readability)
m (Add category)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= External contribution integration =
+
= 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 [2]
+
* Accept the diff if ready. 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]
  
 
* 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 16: Line 14:
 
     arc patch $PATCH_NAME
 
     arc patch $PATCH_NAME
 
     # this will create a local commit amend the commit message if
 
     # this will create a local commit amend the commit message if
     # necessary (added a `Close <concerned-task> for example)
+
     # necessary (added a `Close <concerned-task>` for example)
 
     echo $CONTRIBUTOR_NAME >> CONTRIBUTORS
 
     echo $CONTRIBUTOR_NAME >> CONTRIBUTORS
 
     git add CONTRIBUTORS
 
     git add CONTRIBUTORS
Line 26: Line 24:
 
     git push
 
     git push
  
 
+
[[Category:Software_development]]
[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]
 

Latest revision as of 12:06, 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