问题
I have a PR in a GitHub repository (some one else his PR), which cannot be merged because of conflicts.
What can I do to fix those conflicts by myself?
I tried the following:
- Create new branch from PR
- Checkout, pull and merge master
- Fix the conflicts manually. Lot of work.
- Test it locally, it works. :)
- Stage all the files
git add .
- Commit and push
- Create a new PR
- And then still the message "This branch has conflicts that must be resolved".
What I'm doing wrong? Locally everything works and git status
reports:
On branch branch2 Your branch is up-to-date with 'origin/branchX'.
nothing to commit, working directory clean
PS: If I redo "merge master", all the conflicts are back. Don't get this.
回答1:
The usual workflow is:
- make sure yo have the latest
master
fromupstream
,upstream
being the name of the remote referencing the original repo in a triangular workflow)
git fetch upstream
Then you create your own branch (in your own fork, where you have fetch the PR branch from another fork)
git checkout -b branch2 otherfork/PRbranch
And you rebase that branch on top of upstream/master
This is key: no merge: rebase only, that way, you will resolve conflicts, and the resulting history of branch2
will be additional commits on top of upstream/master
, which will make the PR a simple fast-forward merge when applied (merged) to master
in the original repo (the upstream
one).
来源:https://stackoverflow.com/questions/33356846/cannot-resolve-github-conflict-in-pr