Search code examples
gitmergecherry-pickgit-cherry-pick

How can one determine the committer of a cherry-pick in Git?


In Git, cherry-pick retains the original commit's author, timestamp etc, at least when there are no conflicts. But is there any way to determine what user performed the cherry-pick which brought that commit to the new branch?


Solution

  • The author will be picked up from the original commit, but the committer (shown with git log --format=full) will be the one doing the cherry picking. This committer field is not secure, as cherry-pick commit creation is ultimately under the control of the cherry-picker. The only reliable way to track the commit creator, in this case the cherry pick instigator, is by signing off on the commit.

    A simpler method is to carefully log pushes on the git server. The commits introduced by a push indicate who did the cherry-pick or, more precisely, who published it.