Re: Suggestion: add option in git-p4 to preserve user in Git repository
- From
- Pete Wyckoff <pw@padd.com>
- Date
- Jan 12, 2013, 22:56 UTC
- Message-ID
- <20130112225640.GA23079@padd.com>
- In-Reply-To
- <CAFXk4bpM8X3k=iwRjM9kvm4XbZyKS+hTCiVbHOjH3jK6MkkBSg@mail.gmail.com>
shish@keba.be wrote on Sat, 12 Jan 2013 14:44 -0500:
Show 25 quoted lines
> 2013/1/12 Pete Wyckoff <pw@padd.com>: > > shish@keba.be wrote on Thu, 10 Jan 2013 22:38 -0500: > >> I'm in a situation where I don't have P4 admin rights to use the > >> --preserve-user option of git-p4. However, I would like to keep user > >> information in the associated Git branch. > >> > >> Would it be possible to add an option for this? > > > > The --preserve-user option is used to submit somebody else's work > > from git to p4. It does "p4 change -f" to edit the author of the > > change after it has been submitted to p4. P4 requires admin > > privileges to do that. > > > > Changes that are imported _from_ p4 to git do have the correct > > author information. > > > > Can you explain a bit more what you're looking for? > > Sorry I wasn't clear enough. When "git p4 submit" submits changes from > Git to P4, it also edits the Git history and replaces the Git commits' > authors by the information from the Perforce account submitting the > changes. The advantage is that both the P4 and Git repositories share > the same author information, but in my case I would like to keep in > the Git repository the original authors (because the P4 account I'm > using to submit to P4 is shared by all Git users).
Ah, I see what you're looking for now. It's certainly possible to keep a mapping in the git side to remember who really wrote each change that went into p4, but there's nothing set up to do that now. And it would be a fair amount of work, with many little details.
You could put the true name in the commit message, like we do signed-off-by messages: "Author: Real Coder <rc@my.com>". That would keep the proper attribution, but not work with "git log --author", e.g.; you'd have to use "--grep='Real Coder'" instead.
-- Pete