From: Bagas Sanjaya Date: Sun, 21 Mar 2021 09:17:37 GMT Subject: Re: [PATCH v2 2/2] [GSOC] interpret-trailer: easy parse trailer value Message-ID: <1722fbad-6ff3-444f-ad3f-59e37b640fc7@gmail.com> In-Reply-To: <8b8b236a4ffb81a8c6be3f320b878cea1d0f9d7a.1616317135.git.gitgitgadget@gmail.com> On 21/03/21 15.58, ZheNing Hu via GitGitGadget wrote: > +test_expect_success 'commit --trailer parse @nickname' ' > + echo "I love git" >file1 && > + git add file1 && > + git commit -m "yly" --author="batman " && > + echo "I love git" >file2 && > + git add file2 && > + git commit -m "yly" --author="jocker " && > + echo "I love git" >file3 && > + git add file3 && > + git commit -m "yly" \ > + --trailer "Reviewed-by:@bat" \ > + --trailer "Signed-off-by:@jock" \ > + --trailer "Helped-by:@email1" \ > + --trailer "Mentored-by:@email2" && > + git cat-file commit HEAD >commit.msg && > + sed -e "1,/^\$/d" commit.msg >actual && > + cat >expected <<-\EOF && > + yly > + > + Reviewed-by: batman > + Signed-off-by: jocker > + Helped-by: batman > + Mentored-by: jocker > + EOF > + test_cmp expected actual > +' > + > test_expect_success 'multiple -m' ' > > >negative && > +test_expect_success 'trailer parse @nickname' ' > + echo "I love git" >file1 && > + git add file1 && > + git commit -m "yly" --author="batman " && > + echo "I love git" >file2 && > + git add file2 && > + git commit -m "yly" --author="jocker " && > + git interpret-trailers \ > + --trailer "Reviewed-by:@bat" \ > + --trailer "Signed-off-by:@jock" \ > + --trailer "Helped-by:@email1" \ > + --trailer "Mentored-by:@email2" \ > + empty >actual && > + cat >expected <<-\EOF && > + > + Reviewed-by: batman > + Signed-off-by: jocker > + Helped-by: batman > + Mentored-by: jocker > + EOF > + test_cmp expected actual > +' > + > test_expect_success 'without config in another order' ' > sed -e "s/ Z\$/ /" >expected <<-\EOF && I think please consider this case: When I add --trailer "Reviewed-by:@bat", and there are two identity pairs that match (`batman ` and `batman `), I need to choose one that will be in the trailer (for example because is primary email). So a disambiguation prompt should be added, something like: ``` There are identities that match, please choose one that will be added to the trailer: 1) batman 2) batman ... n) batman ``` The prompt can be repeated for each trailer values that are non-unique. Thanks -- An old man doll... just what I always wanted! - Clara