Commit Graph

57 Commits (todo)

Author SHA1 Message Date
Junio C Hamano 648e17ba94 Meta/cook: fix the reference links
Also support "Inviting" as a will-do phrase.
2024-07-29 19:08:30 -07:00
Junio C Hamano a46c71d747 Meta/cook: Sync What's cooking keywords between cook and Reintegrate scripts 2024-07-12 15:47:25 -07:00
Junio C Hamano 4b82ae443e Meta/Reintegrate: allow 'pick' to be empty 2024-07-11 14:27:35 -07:00
Junio C Hamano 9b9ca896d2 Meta/Reintegrate: -u should generate just once 2024-07-11 14:27:07 -07:00
Junio C Hamano 34cee3057e Meta/Reintegrate: work on a detached head 2024-03-08 21:47:27 -08:00
Junio C Hamano aaf962df4a Reintegrate: cope with delete-modify conflicts
A more proper solution is probably to teach "rerere" to remember
what modification (probably indexed via a patch ID for flexibility,
but either the pre- or post-image blob ID without such flexibility
is probably good enough) was deemed "uninteresting" to resolve in
favor of deletion and reapply it when we see another delete-modify
conflict with the same modification, but for now, treat all
delete-modify conflict to be with uninteresting modification.

The way the Reintegrate machinery is used makes it somewhat safer
than it looks---the initial attempt to merge (and come up with a
merge-fix if needed) will always be done using "git merge" and the
resulting commit is manually examined (if only to see if there is a
need for a further merge-fix) before redo-foo script is written out
of the resulting history.  We'll need to deal with a case where a
modifying side need to be kept over the deleting side if/when it
arises, but so far I haven't seen such a case in real life.
2023-12-11 12:40:09 -08:00
Junio C Hamano 82f56fe383 Meta/Reintegrate: omit source message ID from the merge message 2022-10-10 14:33:26 -07:00
Junio C Hamano d7f018bfc9 Meta/Reintegrate: Breaks is a significant word 2022-01-24 10:35:28 -08:00
Junio C Hamano 1bc963bf8c Reintegrate: check coccicheck-pending, too 2019-03-01 07:28:15 +09:00
Junio C Hamano 322e6dc209 Reintegrate: teach 'On hold' status 2019-03-01 07:27:42 +09:00
Junio C Hamano 1531073078 Meta/Reintegrate: do not apply cocci unless the tip advances 2018-10-26 16:53:30 +09:00
Junio C Hamano f4fe00f887 Meta/Reintegrate: allow applying cocci transformation 2018-10-23 16:01:23 +09:00
Junio C Hamano 09b3a49fbc Meta/Reintegrate: allow output from Meta/cook -w to be pasted into the branch list 2018-05-17 15:00:13 +09:00
Junio C Hamano 54c4940400 Meta/Reintegrate: make sure a merge stays a merge 2017-10-16 15:52:44 +09:00
Junio C Hamano 0862e13a57 Meta/cook: catch 'will wait...', too
... and ignore ??/wip-* while at it.
2017-07-07 12:24:37 -07:00
Junio C Hamano 60febec4c7 Meta/Reintegrate: find the branch name literally in "What's cooking" reort
It is kind of surprising but this week I named a topic name with '+'
in it for the first time, and for that branch the pattern did not
match and failed to annotate it with the description.
2016-09-21 08:34:09 -07:00
Junio C Hamano 17abc906c5 Meta/cook, Meta/Reintegrate: add a few more $willdo verbs
"Will hold" and "Will eject (from ...)" are common things to say.
2016-06-23 15:30:20 -07:00
Junio C Hamano 083f201b04 Meta/Reintegrate: give a blank to separate cut mark
The reintegrate script can have "### cut here" comments to separate
the list of topics at certain points to group them better.  Add a
blank line after them to make a long list easier to see.
2016-06-23 15:24:41 -07:00
Junio C Hamano 2dc125e01b Meta/Reintegrate: omit everything after $willdo verb
A typical entry in whats-cooking.txt begins with the description of
the topic, followed by "Will do what to this topic" declaration of
the decision (i.e. $willdo verb) and supplemental text to explain
the decision.  When we read such an entry to add to a merge log
message, we omit the line with "Will do what".

Instead, stop reading there to exclude the supplemental text from
the merge log.
2016-06-23 15:20:49 -07:00
Junio C Hamano 783534b26f Meta/cook: 'Still doing something' is another keyphrase 2016-01-26 16:21:34 -08:00
Junio C Hamano 878a985a8f Meta/Reintegrate: need to override GIT_EDITOR
The user may have his own GIT_EDITOR and overriding EDITOR would
not help making the script non-interactive.
2015-03-06 15:24:35 -08:00
Junio C Hamano 47f8a44dd7 Meta/Reintegrate: use older editions of what's cooking report as needed
When down-merging old topics that graduated to 'master' some time
ago to maintenance tracks, Meta/whats-cooking.txt that is checked
out would no longer have the release notes entry for the topics.
Look for recent editions of what's cooking report in such a case.
2015-02-24 21:53:33 -08:00
Junio C Hamano 86b0be18d6 Meta/Reintegrate: show what happened during the fix-up 2014-10-24 15:26:00 -07:00
Junio C Hamano 328539987b Meta/Reintegrate: pass custom merge options
While rebuilding an integration branch, some topics may need custom
merge options, such as -Xsubtree=where/, to explicitly tell where
that foreign history sits in our tree.  Teach the Reintegrate script
to pay attention to branch.$name.rebuild configuration, e.g.

	[branch "jl/git-gui-show-added-submodule-changes"]
		rebuild = -Xsubtree=git-gui/

to allow customization.
2014-04-16 10:28:24 -07:00
Junio C Hamano ebf996778d Meta/Reintegrate: pick up "Can wait in", too 2013-11-21 16:18:07 -08:00
Junio C Hamano 7cc72ca00b Meta/Reintegrate: ignroe whitespace when comparing list of topics
Often topics that are ready to advance are marked by indenting them
before moving.  Ignore these changes when comparing.
2013-07-19 10:21:31 -07:00
Junio C Hamano c0867ec58f Meta/Reintegrate: guard for misspelt topic name
Earlier the script just kept going, pretending that the failure from
the "merge" was due to a conflicted change that rerere could take
care of.
2013-07-19 10:20:54 -07:00
Junio C Hamano dfe39c3fe1 Reintegrate: remove the "what next" markers from log messages 2013-05-24 14:12:29 -07:00
Junio C Hamano 98b350d958 Meta/Reintegrate: omit cut mark if no topics were merged from the group 2013-01-09 12:56:46 -08:00
Junio C Hamano f02bf6b48b Meta/Reintegrate: try keeping the cut points with comments
Using empty commits on the throw-away trial integration branches,
keep track of the "doneness" comments in the history, so that
later run of "redo-*.sh -[ud]" can resurrect them.
2013-01-08 16:13:55 -08:00
Junio C Hamano 86e573b3d8 Meta/Reintegrate: report the "cut" points 2013-01-03 11:08:57 -08:00
Jeff King afb85c76b2 Reintegrate: use --no-decorate with log --oneline
Otherwise, the script gets confused and gives us a "Huh?"
line when log.decorate is set.
2012-10-24 03:31:37 -04:00
Junio C Hamano 29d334511a Meta/cook: format the topic description with indentation
This _might_ make things easier to read, together with an extra
blank line between each topic.

Adjust Meta/Reintegrate to read and strip the extra indentation to
avoid breaking the merge log messages.  "Meta/cook -w" also has
been adjusted to read and strip the extra indentation before finding
the markers for "will-do".
2012-09-13 21:40:02 -07:00
Junio C Hamano ad241d9861 Meta/Reintegrate: force invoking the editor when merging
As "git merge" is clever not to default to --edit behaviour when its
standard input and output streams are not connected to the same
terminal (i.e. indicating an interactive tty session), we would need
to explicitly ask for "--edit" while exporting "EDITOR=:" one-shot,
so that commit log cleaner still is triggered.

In the longer term, the interactions among pull, fmt-merge-msg,
merge and the editor need to be redesigned, but it is a large task,
so for now this workaround should suffice.
2012-07-16 16:06:27 -07:00
Junio C Hamano a5873c4d69 Meta/Reintegrate: work around minor --no-edit breakage
For --no-edit to be true replacement of one-shot export of EDITOR=:,
it should trigger stripspace() to remove comments, but currently it
doesn't.  Avoid using it for now.
2012-06-27 21:17:09 -07:00
Junio C Hamano 0768d27d1d Meta/Reintegrate: stop at a cut ### line 2012-04-27 13:41:00 -07:00
Junio C Hamano 370023272c Meta/Reintegrate: allow each step to be optionally amended
This will let me run 'Meta/Reintegrate -e' and feed the selected branches
while on 'master', i.e. the final graduation ceremony, and clean up the
merge messages.
2012-03-16 13:04:28 -07:00
Junio C Hamano 052051e5b1 Meta/Reintegrate: propagate branch description from whats-cooking.txt 2012-03-12 10:36:13 -07:00
Junio C Hamano bf6d875cd2 Meta/Reintegrate: redo the rerere part 2012-03-12 10:23:08 -07:00
Junio C Hamano 5280cd6e97 Meta/Reintegrate: use merge --no-edit 2012-02-09 16:03:10 -08:00
Junio C Hamano 017d4649f6 Meta/Reintegrate: allow comment in redo list 2011-10-19 11:14:40 -07:00
Junio C Hamano d20798c67a Meta/Reintegrate: -u should default to safer "n" option 2011-05-18 23:35:51 -07:00
Junio C Hamano cc5f90c07c Reintegrate: make merge-fix-up more noticeable 2011-02-22 14:54:41 -08:00
Junio C Hamano 8a419eb2ac Reintegrate: abort the whole thing when commit is aborted 2010-12-08 15:35:04 -08:00
Junio C Hamano 3bc8f10b46 Meta/Reintegrate: make generated scripts support -u/-d options themselves 2010-07-08 07:53:41 -07:00
Junio C Hamano 9ef638879b Reintegrate: allow regeneration of test integration on a detached HEAD 2010-05-26 10:40:59 -07:00
Junio C Hamano 47dc5e28f2 Reintegrate: do not fail when garbage is found in the orignal 2010-05-03 13:34:23 -07:00
Junio C Hamano 45ac5d4ec2 Reintegrate: allow comments in the input 2010-03-20 12:57:40 -07:00
Junio C Hamano 3ec0851d85 Reintegrate: allow update/diff 2010-02-23 17:22:43 -08:00
Junio C Hamano dc8b63cc12 Reintegrate: handle merging from remote tracking branches 2010-01-10 11:12:42 -08:00