Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
staging [2009/11/21 18:54]
mdc
staging [2010/01/15 13:00] (current)
stefanha
Line 3: Line 3:
 {{ :​bootrom.jpeg?​120x96|A boot ROM}} {{ :​bootrom.jpeg?​120x96|A boot ROM}}
  
-The [[http://​git.etherboot.org/?​p=gpxe-staging.git|staging tree]] is used to hold branches ​with patches ​for review and merging into the [[http://​git.etherboot.org/?​p=gpxe.git|main gPXE tree]]. ​ It provides a central location for collecting patches submitted via the mailing list, IRC, and other methods.+The [[http://​git.etherboot.org/?​p=gpxe-staging.git|staging tree]] is used to hold branches ​waiting ​for potential ​merging into the [[http://​git.etherboot.org/?​p=gpxe.git|main gPXE tree]]. ​ It provides a central location for collecting patches submitted via the mailing list, IRC, and other methods.
  
 Most branches in the staging tree hold individual features, such as a new driver, and are referred to as "​feature branches"​. Most branches in the staging tree hold individual features, such as a new driver, and are referred to as "​feature branches"​.
  
-Once a feature branch is merged into the main gPXE tree, it will be deleted from the staging tree.+After a feature branch is merged into the main gPXE tree, it is deleted from the staging tree.
  
 ===== Trying out a feature branch ===== ===== Trying out a feature branch =====
Line 173: Line 173:
 === Indicating readiness for final merge review === === Indicating readiness for final merge review ===
  
-When a sponsor believes that an appropriate window of opportunity for review has expired, they may then rename their branch ​in the staging repository in the following format:+When a sponsor believes that an appropriate window of opportunity for review has expired, they may send a pull request email to staging@etherboot.org. ​ This is an indication to main branch ​maintainers that the feature is now ready for final merge review.
  
-    sponsor_name-task_number-feature_branch_name-ready+The email subject should be as follows:
  
-This is an indication to main branch maintainers that the feature is now ready for final merge review.+    [PULL REQUEST] sponsor_name-task_number-feature_branch_name 
 + 
 +The pull request email message can be generated as follows: 
 + 
 +    $ # Currently on the staging branch 
 +    $ git request-pull master git://​git.etherboot.org/​scm/​gpxe-staging.git
  
 Note to staging tree maintainers: ​ Note to staging tree maintainers: ​
Line 185: Line 190:
     $ git push staging local_name:​refs/​heads/​remote_name     $ git push staging local_name:​refs/​heads/​remote_name
  
-Main repository maintainers ​can easily check for branches pending ​final merge review ​with +Main repository maintainers ​respond to the pull request email by performing ​final review ​and merging ​the branch if it passes review.
- +
-    $ git branch -r -v | grep ready +
- +
-or by using gitweb to view all branches in the staging repository:​ +
- +
-    http://​git.etherboot.org/?​p=gpxe-staging.git;a=heads+
  
 === Final merge review procedure === === Final merge review procedure ===
Line 215: Line 214:
     $ git am < new_feature_v2.patch     $ git am < new_feature_v2.patch
     $ git push staging sponsor_name-task_number-feature_branch_name_v2     $ git push staging sponsor_name-task_number-feature_branch_name_v2
- 
 ==== Some useful git commands for staging maintainers ==== ==== Some useful git commands for staging maintainers ====
  
 === Ways to view the staging repository === === Ways to view the staging repository ===
 +
 +== View compact listing of remote branches ==
  
     $ git branch -r -v     $ git branch -r -v
 +
 +== Look at staging branch commits ==
 +
     $ git log staging/​branch_name     $ git log staging/​branch_name
 +
 +== Show commits in staging branch not in main branch ==
 +
 +    $ git cherry -v HEAD staging/​branch_name
  
 === Prune remote branches from local repository === === Prune remote branches from local repository ===
Line 242: Line 249:
  
 The ":"​ character before the remote_branch_name is required for the push to work. The ":"​ character before the remote_branch_name is required for the push to work.
- 
- 
- 
- 
- 
- 

QR Code
QR Code staging (generated for current page)