google / UIforETW

User interface for recording and managing ETW traces
https://randomascii.wordpress.com/2015/04/14/uiforetw-windows-performance-made-easier/
Apache License 2.0
1.57k stars 201 forks source link

add comments to clarify obscure xperf args #40

Closed ariccio closed 9 years ago

ariccio commented 9 years ago

Hopefully, self-descriptive.

randomascii commented 9 years ago

I experimented with a few merge techniques: 1) The recommended manual merge technique with --no-ff causes weird reordering stuff that I don't like. 2) Removing --no-ff creates a more straightforward history. In this case it adds your commit (author == you) and a merge commit (author == me). 3) Using --squash leads to the simplest result - a single commit - but it means that the author is listed as me (with your information in the description).

Thoughts/preferences? I'm going to use --squash for complex changes, but I could use option #2 for simpler cases. It depends, to some extent, on how much you want yourself listed as 'author'.

hymerman commented 9 years ago

Option 2 is the normal way; generally it's best to see the commit history complete with authors - squashing complex work into single large commits is unusual and makes it harder to see exactly what was done, and harder to revert parts selectively.

If there are lots of useless commits (say, of 'work in progress' commits, or lots of repeated merges from upstream), it's best for contributors to simplify this by rebasing/squashing to remove those commits, prior to submitting pull requests. If that doesn't happen it's ok to ask them to go back and massage their branch history a little and resubmit the pull request.

randomascii commented 9 years ago

Sounds good. I'll save squash for emergency situations and ask contributors to use it if it seems necessary. If omitting --no-ff avoids the weird history problems then I'll be happy.

hymerman commented 9 years ago

Cool! I should have said; --no-ff basically exists explicitly to make history a bit weird - it'll force a merge commit even when one isn't needed. This way you could view the DAG of history as one line containing your commits (including merge commits), which contributors branch from and get merged into. Otherwise you'll get little runs where there are commits by people other than yourself. I find it a bit pointless but some like it. On 4 Jul 2015 18:55, "Bruce Dawson" notifications@github.com wrote:

Sounds good. I'll save squash for emergency situations and ask contributors to use it if it seems necessary. If omitting --no-ff avoids the weird history problems then I'll be happy.

— Reply to this email directly or view it on GitHub https://github.com/google/UIforETW/pull/40#issuecomment-118537808.