[cfe-dev] [llvm-dev] Phabricator Maintenance

Nicolai Hähnle via cfe-dev cfe-dev at lists.llvm.org
Thu Jun 25 08:10:29 PDT 2020


On Thu, Jun 25, 2020 at 11:43 AM Nikita Popov via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> On Thu, Jun 25, 2020 at 11:22 AM Zachary Turner via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>> What this means for LLVM is that everyone will have to completely stop using history rewriting operations.  No more rebase, squash, amend, etc.
>
> This is also incorrect. Most GitHub projects I work on use a rebase-oriented workflow without issue, so clearly that's possible...
>
> The only issue in this area that I'm aware of is that you can't easily see what changed between two revisions of a pull request if you both a) rebase onto master and b) amend commits at the *same* time. For review purposes it is most useful if additional changes are not squashed into existing commits, but pushed on top. The squash is best performed when landing the changes.

Disagree. I usually want to be able to review the actual commits that
will be landed, not some imagined combination that may or may not line
up with what the author will end up squashing things to.

Remember, the goal is for authors to be able to have a review of
multiple commits in a patch series, i.e.

   Patch 1
   Patch 2

... and then make changes to both of those patches based on reviews.
If you just push delta commits, then in the best case, if people
properly use `git commit --squash`, you get:

   Patch 1
   Patch 2
   squash! Patch 1
   squash! Patch 2

or something along those lines, and things just become really messy to
keep track of. The Phabricator Stacks UI isn't ideal for this, but it
tends to work quite a bit better than what GitHub has.

Cheers,
Nicolai
-- 
Lerne, wie die Welt wirklich ist,
aber vergiss niemals, wie sie sein sollte.


More information about the cfe-dev mailing list