git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Suggestion: add option in git-p4 to preserve user in Git repository

From
ODOlivier Delalleau <shish@keba.be>
Date
Jan 13, 2013, 04:56 UTC
Message-ID
<CAFXk4bp3RRkmEvubvYVRv795-92zn2tMrFJX61CcUQfyG6xB8g@mail.gmail.com>
In-Reply-To
<20130112225640.GA23079@padd.com>
2013/1/12 Pete Wyckoff <pw@padd.com>:
Show 38 quoted lines
> shish@keba.be wrote on Sat, 12 Jan 2013 14:44 -0500:
>> 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.

Ok, thanks. I actually manage to hack my way around it, restoring the author information with "git filter-branch" and overriding the remote p4 tracking branch with "git update-ref". Did some limited testing and it seems to work -- hopefully I won't have nasty surprises down the road ;)

-=- Olivier
Previous: Pete WyckoffNext: Deirdre Connolly
Message 5 of 6 in “Suggestion: add option in git-p4 to preserve user in Git repository”
  1. Olivier DelalleauJan 11, 2013
  2. Pete WyckoffJan 12, 2013
  3. Olivier DelalleauJan 12, 2013
  4. Pete WyckoffJan 12, 2013
  5. Olivier DelalleauJan 13, 2013
  6. Deirdre ConnollyJun 17, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.