Page MenuHomePhabricator

Fix recommended workflow documentation
Open, NormalPublic

Description

The following article is mentioned in our CONTRIBUTING.md file.

https://medium.com/@kurtisnusbaum/stacked-diffs-keeping-phabricator-diffs-small-d9964f4dcfa6

However, the recommended workflow does not actually work -- there does not seem to be a way to submit diffs in the middle of a rebase. We either need to write our own documentation, or you need to inform @schancel what he is doing wrong so he can help others and/or write documentation.

Event Timeline

schancel triaged this task as Unbreak Now! priority.Feb 16 2018, 20:23
schancel created this task.
matra774 added a subscriber: matra774.EditedFeb 16 2018, 23:37

Here are some guidelines on how to get out of the mess, created by stacking and rebasing commits.

  • Some of your commits might be detached (as a result of wrong rebase). To find them use git log --graph --decorate --pretty=oneline $(git rev-list -g --all --author=yourName)
  • Match those commits with Phabricator Diffs by visiting https://reviews.bitcoinabc.org/Dxxxx and checking hashes in Revision Contents/Commits
  • One you found detached commit, create a branch from it: git branch yourBranchName commitHash
  • Someone else might have already pushed his commits onto master. To avoid problems with landing your commits, fetch remote master changes by doing git fetch origin master && git rebase -i origin/master
  • Rebase your branch: on master: git rebase master -i
  • Make and necessary changes and commit them
  • To check if arc still maintain reference to the Diff, run: arc which
  • Arc probably lost the reference to your Diff. It also sometimes mixes up what was already commited and what not. To specify Diff and commit range, use Use arc diff --update Dxxx firstCommitHash
deadalnix lowered the priority of this task from Unbreak Now! to Normal.Feb 22 2018, 11:40