Improve addrev and ghmerge tools and their README#59
Improve addrev and ghmerge tools and their README#59DDvO wants to merge 15 commits intoopenssl:masterfrom
Conversation
|
I've just added also the following info on |
paulidale
left a comment
There was a problem hiding this comment.
This looks like an improvement.
|
While you're tweaking, would it be possible to have |
|
A strong "yes" to defaulting |
I was considering that as well but was reluctant because of the name of the tool. |
How about changing the name of the tool to |
I would leave the name as it is, because the main action is the merging (in the sense of integration) of the pull request into the master branch. That we integrate it linearly without creating an explicit merge commit is more a technical detail IMHO. |
|
Essentially, it's a |
Looking at it once more, I think it's |
I'm not so sure on this, since in both cases some (auto)squashing is done: |
|
Doing my most recent push using the new version of the tool, |
It's a matter of how you view it: If the pull request has seven commits, each of which has several fixups, then the latter does a dumb squash-all-in-a-big-blob, while the former leaves the seven commits intact and only incorparates the fixups. But it's up to you to choose a name which suits you. |
mspncp
left a comment
There was a problem hiding this comment.
Please reword the commit message of e738545 to add an empty line between 'various tweaks' and the subitems:
Various tweaks to make ghmerge more usable
- make gcc (rather than clang-3.6) the default for rebuilding
- take the (SSH version of the) repo URL from the database
- print some more (and slightly improve) info what is going on
- show the log of the commits be pushed (after addrev is called)
Otherwise, git will turn the entire paragraph into a boa-constrictor sentence (as you can see in the fixups already). It's sufficient if you do it when you rebase interactively before finally pushing it. (Just replace pick e738545692ec by reword e738545692ec).
... but the other way around. |
Yeah, thanks for noticing. I mixed up the order. |
6d7690f to
9701575
Compare
[in this quote I've fixed the confusion mentioned above] I know.
All right, so I've kept the variable name |
Done. Unfortunately, such a change breaks the autosquash capability of the fixups for this commit because git references the base commit by its title (and not, e.g. by its hash-based ID). In the future I'll make sure to put an empty line after the first line of multi-line commit messages. |
GIt does not reference the commit hash by design. Just imagine that git would do that. Then it would have to rewrite the commit messages of all fixups every time you rebase. |
|
I've just added |
a2e016d to
1f349de
Compare
|
I suggest you avoid aliases, you don't need more than one way to do things. |
add '--noautosquash' option to interactive rebase in ghmerge
06961a3 to
73b0431
Compare
|
I've meanwhile cleaned up up the (fixup) commits I've done so far. |
|
I've done some further small improvements on I found that sometimes (after some more complex/messed-up commits that interfere with each other) the |
enhance usability of addrev: one may leave out '--prnum=' and just give the PR number
add '--remote' option defaulting to 'origin'; update doc accordingly
update README w.r.t. addrev by including PR numbers in the examples
|
I've just added a further option to |
|
I've also slightly simplified the CLI of |
Why not ask git instead of assuming 'origin'? $ git remote -v | grep 'github.com/openssl/openssl' |
|
Ups, wrong repo :-) $ git remote -v | grep git.openssl.org |
|
A classical use-case for good'ol awk: $ git remote -v | awk '/git.openssl.org.*(push)/{ print $1; }' |
let the default remote be the first one matching 'git.openssl.org.*(push)'
@mspncp, good thought and thanks for the code snippet. |
improve error handling of ghmerge
|
Trying the |
|
Any further comments or requests for changes? |
t8m
left a comment
There was a problem hiding this comment.
LGTM. But I prefer if someone else who also uses the ghmerge also approves.
|
Thanks @t8m and @paulidale for your swift approvals. Can an OMC member please now do the merge? |
|
I've merged it but I don't think I used the new ghmerge. I would have used the new versions of things it calls. |
Well now after this merge the ghmerge is becoming really useful tool. |
Very pleased to hear! |
Various tweaks to make
ghmergemore usable:* make gcc (rather than clang-3.6) the default for rebuilding
* take the (SSH version of the) repo URL from the database
* print some more (and slightly improve) info what is going on
* show the log of the commits be pushed (after
addrevis called)Extend
review-tools/README, making clear thatghmergecallsaddrevBTW, @mattcaswell, thanks for the Committer Instructions I had received by email.
I suggest adapting also these such that it becomes clear that
ghmergeusesaddrev.For instance: