Git Rebase Patch Does Not Have A Valid Email Address
Submitting a Gaia patch Archive of obsolete content. By now you should have made a code change and verified that it hasnt broken Gaia. The next step is to submit your patch to the central repo, which is what this article explains. Submitting patches to Gaia can be a little tricky until you get used to it, as it involves Bugzilla and Github, and usage of special flags in Bugzilla to make everything happen in the right sequence. Easy patch submission with Autolander. Autolander is a tool that automatically handles a lot of the steps required for submitting patches to Gaia and other projects it is being used with, saving time and cutting down on errors in the process. Autolander integrates the Bugzilla to Github workflow by attaching pull requests to bugs automatically, and other such things. To use Autolander First, submit a bug on bugzilla to indicate what you are doing, if one does not already exist for this code change. You should submit this under the Firefox OS product, and give it a nice descriptive title to say what your code does. Now it is time to create a pull request for your patch. If you followed our guide from the start, you should have your changes made in a local fork of the Gaia repo and in a uniquely named branch. In case you havent, you can use the commands below in order to have a ready local origin to modify. Next, git add. your changes, then git commit m my commit message. Bugzilla bug number and title of the bug, plus more information describing what the patch does, and who should review the commit. For example. Bug 9. Fix that annoying bug Rjohndoe. Push the code to your Gaia fork on github. Create a PR to offer the code up for inclusion in the main branch. Patch does not have a valid email address after. Patch does not have a valid email. Once the pull request is opened, it will automatically be attached to the bug found in the PR title. In the future, when the attachment has been given an r from a suggested reviewer, you can add the autoland keyword to the keywords field in order to land the code in Gaia master meaning Autolander will land the code merge the PR, put the commit into the bug, and mark the bug as resolved fixed. HOWEVER, at the moment this part is still being worked on, so for now youll have to add a checkin needed keyword and wait for someone appropriate to land it for you. Note Autolander runs integration tests before landing in master. If the integration tests do not pass, Autolander will refuse to land the code. Some basic validations are performed such as making sure your pull request and commit message contain a bug number. Git rebase fails with Patch does not have a valid e. Patch does not have a valid email address. Now its true there isnt an email address for the. Git rebase fails with Patch does not have a valid email address. Hi, Im trying to rewrite some history and gits telling me bashjamesblccam02533079 git. U.jpg' alt='Git Rebase Patch Does Not Have A Valid Email Address' title='Git Rebase Patch Does Not Have A Valid Email Address' />Note Pull requests are landed in the order that they are requested to land. Pull requests are merged to an integration branch, and integration tests are run in parallel in this branch. If a PR fails the integration tests, it is rejected from the integration branch, and we rebuild the integration branch with the remaining commits. When a commit passes, we fast forward master to that commit. Note If you need to push your patch to more branches for instance to kanikani, you can proceed with the following commands after your push git checkout b bug. Commit. ID and finally git push origin bug. Manual patch submission. If for some reason you dont want to rely on Autolander, follow these steps to submit your patch to Gaia manually. First, submit a bug on bugzilla to indicate what you are doing, if one does not already exist for this code change. You should submit this under the Firefox OS product, and give it a nice descriptive title to say what your code does. Now it is time to create a pull request for your patch. If you followed our guide from the start, you should have your changes made in a local fork of the Gaia repo and in a uniquely named branch. Next, git add. your changes, then git commit m my commit message. For example. Bug 9. Fix that annoying bug Rjohndoe. Push the code to your Gaia fork on github, then create a PR to offer the code up for inclusion in the main branch. Add the PR URL as an attachment to the Bug on bugzilla follow the Add an attachment link, choose paste text as attachment if it is currently in the file input mode, enter the URL of the PR as the contents of the attachment, and enter a brief description. On the PR attachment to the Bugzilla bug, ask for a reviewer for your patch. You should do this by adding the review Module owners page for more details. Wait for a reviewer to be assigned and review your patch. At this point they will probably include some comments asking for changesfixes on the PR in Github, and link to them on Bugzilla. Address the reviewers comments, then push further changes to the same PR as before, reattaching the review Once the reviewers comments are addressed and they have given you the r flag meaning its reviewedapproved, you should squash all your commits intoone also read the TipsonGaiaRebasing section below. Add a checkin needed keyword to the keywords field. At this point, you need to wait for someone to come and land your patch for you in the Gaia source merge the PR, etc. CongratulationsYour code is now part of Firefox OS Note Wed recommend sticking to one commit per review. Note further patch submission instructions can be found in contributing. Tips on Gaia Rebasing. The Gaia master branch changes constantly many, many times a day. After creating a patch that takes 2 hours, you might find that the master branch has changed underneath you. From your working branch e. If there are no conflicts, you can carry on like this git checkout my code fix. D my code fix r. If you do find conflicts, work them out with the developers responsible for the conflicting changes and repeat the rebase procedure described above. Status tracking versus engineering bugs. Mozilla has a special role called Sheriff. Sheriffs are in charge of merging code and maintaining branch status. Since we have limited sheriffs scouting for test failures in Firefox OS teams, it is hard for sheriffs to back out all imperfect patches. In Firefox OS therefore, we prefer to open a new bug for landing new patches to fix an issue, if we encounter failure while examining whether a patch works or not. This causes some trouble for tracking status in QA and project management teams. 737 Pilot In Command. Therefore, we separate the bugs into status tracking bugs, and engineering bugs. Status tracking bugs should be identified with a meta keyword. A status bug can be reopened if it doesnt meet the acceptance criteria or has failed during the steps to reproduce. An engineering bug should be reopened only if it fails in automation testing or the patch totally doesnt work. If a patch fixes the engineering bug partilly, you should clone the bug and use the see also field to reference the original bug and describe the failure point. Note If its also a user story bug, the project manager should fill the user story field with user story and acceptence criteria. Recovering if you accidently land a patch on a status tracking bug. If you do this, dont panic. If you accidently land a patch, get review, land it on the trunk, or have it reported as fixing nothing, heres what youll need to do Press Clone this bug at the bottom right corner of the Bugzilla UI to create a new bug, cloning most of the original fields into it.