flutter-embedder reviews are handled using Gerrit at https://fuchsia-review.googlesource.com, which uses a single commit per code review. See this guide for an intro to Gerrit.
An alternative Gerrit workflow is a branchless workflow where you do all your work from origin/main
without creating new branches. We describe such a workflow below, but it‘s not mandatory, it’s just provided as an example.
An example branchless workflow for creating a new change is:
# Start work from an up-to-date main branch. git fetch origin git checkout origin/main # Modify some files... ... # Stage and commit your changes. git add file1.cc file2.h git commit -m "[embedder] My cool new feature." # Upload for review. git push origin HEAD:refs/for/main
An example branchless workflow to apply feedback during a code review is:
Visit https://fuchsia-review.googlesource.com and find your change.
Select ... > Download patch > Checkout
and copy the command.
Run the following commands:
# Start from main with your change on top. <paste the command you copied above> # Make some changes to some files to apply the feedback... ... # Stage and amend your changes to your commit. git add file1.cc file2.h git commit --amend # Upload your updated change for review. git push origin HEAD:refs/for/main
An example branchless workflow to create a chain of changes is:
# Start work from an up-to-date main branch. git fetch origin git checkout origin/main # Modify some files... ... # Stage and commit your changes. git add file1.cc file2.h git commit -m "[embedder] My cool new feature 1." # Upload for review. git push origin HEAD:refs/for/main # Do some more work on top of your cool new feature. git add file3.cc file4.h git commit -m "[embedder] My cool new feature 2." # Create a second code review for your second feature. # The second code review will only show changes for # your second feature and it will indicate that it is based on # top of the first feature. git push origin HEAD:refs/for/main
A branchless workflow comes with some benefits:
git checkout origin/main
).However a branchless workflow also prevents you from storing multiple chains of commits locally. Uploading your changes to https://fuchsia-review.googlesource.com frequently can help address that problem, as https://fuchsia-review.googlesource.com then acts as the storage for each of your ongoing changes. This also keeps your changes in a state where they're easy to share and hand off to other people.