Skip to content

Commit ad956b4

Browse files
authored
Merge pull request #6045 from kenjis/fix-contributing/workflow.md
docs: add "Updating Your Branch" in contributing/workflow.md
2 parents b05533c + dc3896d commit ad956b4

File tree

1 file changed

+35
-9
lines changed

1 file changed

+35
-9
lines changed

contributing/workflow.md

Lines changed: 35 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ Then synchronizing is done by pulling from us and pushing to you. This
7878
is normally done locally, so that you can resolve any merge conflicts.
7979
For instance, to synchronize **develop** branches:
8080

81-
git checkout develop
81+
git switch develop
8282
git fetch upstream
8383
git merge upstream/develop
8484
git push origin develop
@@ -109,8 +109,8 @@ For instance, make sure you are in the *develop* branch, and create a
109109
new feature branch, based on *develop*, for a new feature you are
110110
creating:
111111

112-
git checkout develop
113-
git checkout -b new/mind-reader
112+
git switch develop
113+
git switch -c new/mind-reader
114114

115115
Saving changes only updates your local working area.
116116

@@ -131,15 +131,15 @@ Just make sure that your commits in a feature branch are all related.
131131
If you are working on two features at a time, then you will want to
132132
switch between them to keep the contributions separate. For instance:
133133

134-
git checkout new/mind-reader
134+
git switch new/mind-reader
135135
// work away
136136
git add .
137137
git commit -S -m "Added adapter for abc"
138-
git checkout fix/issue-123
138+
git switch fix/issue-123
139139
// work away
140140
git add .
141141
git commit -S -m "Fixed problem in DEF\Something"
142-
git checkout develop
142+
git switch develop
143143

144144
The last checkout makes sure that you end up in your *develop* branch as
145145
a starting point for your next session working with your repository.
@@ -155,17 +155,16 @@ that it could benefit from a review by fellow developers.
155155
> Remember to sync your local repo with the shared one before pushing!
156156
It is a lot easier to resolve conflicts at this stage.
157157

158-
159158
Synchronize your repository:
160159

161-
git checkout develop
160+
git switch develop
162161
git fetch upstream
163162
git merge upstream/develop
164163
git push origin develop
165164

166165
Bring your feature branch up to date:
167166

168-
git checkout new/mind-reader
167+
git switch new/mind-reader
169168
git rebase upstream/develop
170169

171170
And finally push your local branch to your GitHub repository:
@@ -215,6 +214,33 @@ Label your PRs with the one of the following [labels](https://github.com/codeign
215214
And if your PRs have the breaking changes, label the following label:
216215
- **breaking change** ... PRs that may break existing functionalities
217216

217+
## Updating Your Branch
218+
219+
If you are asked for changes in the review, commit the fix in your branch and push it to GitHub again.
220+
221+
If the `develop` branch progresses and conflicts arise that prevent merging, or if you are asked to *rebase*,
222+
do the following:
223+
224+
Synchronize your repository:
225+
226+
git switch develop
227+
git fetch upstream
228+
git merge upstream/develop
229+
git push origin develop
230+
231+
Bring your feature branch up to date:
232+
233+
git switch new/mind-reader
234+
git rebase upstream/develop
235+
236+
You might get conflicts when you rebase. It is your
237+
responsibility to resolve those locally, so that you can continue
238+
collaborating with the shared repository.
239+
240+
And finally push your local branch to your GitHub repository:
241+
242+
git push --force-with-lease origin new/mind-reader
243+
218244
## Cleanup
219245

220246
If your PR is accepted and merged into the shared repository, you can

0 commit comments

Comments
 (0)