Re: [PATCH v3 07/11] Documentation/replace: tell that -f option bypasses the type check
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 5, 2013, 23:13 UTC
- Message-ID
- <xmqqob86g8v4.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <926222C46F2240BDA71A004633E8DB7E@PhilipOakley>
"Philip Oakley" <philipoakley@iee.org> writes:
Show 40 quoted lines
> From: "Philip Oakley" <philipoakley@iee.org> > Sent: Saturday, August 31, 2013 11:16 PM >> From: "Christian Couder" <chriscool@tuxfamily.org> >>> Signed-off-by: Christian Couder <chriscool@tuxfamily.org> >>> --- >>> Documentation/git-replace.txt | 4 +++- >>> 1 file changed, 3 insertions(+), 1 deletion(-) >>> >>> diff --git a/Documentation/git-replace.txt >>> b/Documentation/git-replace.txt >>> index 736b48c..a2bd2ee 100644 >>> --- a/Documentation/git-replace.txt >>> +++ b/Documentation/git-replace.txt >>> @@ -21,10 +21,12 @@ replaced. The content of the 'replace' >>> reference is the SHA-1 of the >>> replacement object. >>> >>> The replaced object and the replacement object must be of the same >>> type. >>> -There is no other restriction on them. >>> +This restriction can be bypassed using `-f`. >>> >>> Unless `-f` is given, the 'replace' reference must not yet exist. >>> >>> +There is no other restriction on the replaced and replacement >>> objects. >> >> Is this trying to allude to the fact that merge commits may be >> exchanged with non-merge commits? I strongly believe that this >> ability to exchange merge and non-merge commits should be stated >> _explicitly_ to counteract the false beliefs that are listed out on >> the internet. >> >> It's probably better stated in a separate patch for that explicit >> purpose to avoid mixed messages within this commit. >> > > Not sure how this method of preparing a comment patch will pan out.. > > --->8----
Make it "--- >8 ---" perhaps to balance out the perforation on both sides.
> From a0c0e765cfd969c9c8a6ff3a2cb6b2f1391d2e7d Mon Sep 17 00:00:00 2001
Not needed nor wanted.
> From: Philip Oakley <philipoakley@iee.org>
Not needed but does not hurt.
> Date: Thu, 5 Sep 2013 22:54:04 +0100
Is OK but redundant given that your message has a timestamp when we saw your patch for the first time anyway.
Show 14 quoted lines
> Subject: [PATCH] Doc: 'replace' merge and non-merge commits > > Signed-off-by: Philip Oakley <philipoakley@iee.org> > --- > > This is supplemental to Christian Couder's 'replace' patch series > (2013-09-03 69dada4 (Christian Couder): t6050-replace: use some long > option names). > > It adds the clarification that merge and non-merge commits are > replaceable. > > Merges are often treated as special case objects so tell users that > they are not special here.
I think the last paragraph deserves to be in the proposed commit log message proper. It explains why it is a good idea to have the added line in the documentation very well.
Show 17 quoted lines
> --- > Documentation/git-replace.txt | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Documentation/git-replace.txt > b/Documentation/git-replace.txt > index 414000e..f373ab4 100644 > --- a/Documentation/git-replace.txt > +++ b/Documentation/git-replace.txt > @@ -26,6 +26,7 @@ This restriction can be bypassed using `-f`. > Unless `-f` is given, the 'replace' reference must not yet exist. > > There is no other restriction on the replaced and replacement objects. > +Merge commits can be replaced by non-merge commits and vice versa. > > Replacement references will be used by default by all Git commands > except those doing reachability traversal (prune, pack transfer and