Page MenuHomeFreeBSD

tools: Add git-mfc
ClosedPublic

Authored by markj on Thu, Jun 25, 3:42 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Jun 29, 6:18 AM
Unknown Object (File)
Sun, Jun 28, 1:14 AM
Unknown Object (File)
Sat, Jun 27, 11:04 PM
Unknown Object (File)
Sat, Jun 27, 11:51 AM
Unknown Object (File)
Fri, Jun 26, 4:59 PM
Unknown Object (File)
Thu, Jun 25, 4:41 PM
Subscribers

Details

Reviewers
des
Group Reviewers
srcmgr
Commits
rG1361901baac4: tools: Add git-mfc
Summary

See the man page for a description of what this does.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 74313
Build 71196: arc lint + arc unit

Event Timeline

markj requested review of this revision.Thu, Jun 25, 3:42 PM

Dag-Erling points out that this script ignores reverts. In particular, we should warn if a user tries to MFC a reverted commit, and it shouldn't MFC fixup commits that were reverted.

It would probably also be useful to search for MFC candidates, i.e., commits from the origin branch which have (expired) MFC tags but aren't in the current branch.

I have a bunch of changes pending

Lots of changes:

  • add a man page
  • add a --pending option to look for commits which are awaiting MFC
  • take reverts into account when scanning commits
  • lots of minor changes
des added inline comments.
tools/tools/git/git-mfc
233

Sequences of related commits are frequently squashed on MFC, and this will only match the last of the series. See for instance 4a866919c37b, 736c14784574.

tools/tools/git/git-mfc.1
289

No AUTHORS section?

markj marked an inline comment as done.

Review feedback:

  • Don't assume that a given stable/* commit corresponds to a single upstream commit.
  • Pick the default remote based on the upstream of the currently checked-out branch.
  • Add an AUTHORS section to the man page.
This revision is now accepted and ready to land.Fri, Jun 26, 9:45 PM

Make git-mfc skip already-MFCed commits by default. This makes handling
of conflicts more ergonomic: after resolving a conflict, you run git cherry-pick --continue
to finish the current cherry-pick, then run the original git mfc command to resume.

Add a --force option to make git-mfc try to cherry-pick commits that it thinks have already
been cherry-picked.

This revision now requires review to proceed.Tue, Jun 30, 2:09 PM
This revision is now accepted and ready to land.Tue, Jun 30, 7:02 PM
This revision was automatically updated to reflect the committed changes.