Christian Couder <> writes:

> Signed-off-by: Christian Couder <>
> ---
>  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.
> +

This is outside the scope of this topic, but I wonder if we want to
restrict a replacement operation that causes a cycle in the object
graph (a commit reaches itself after following its parent pointer,
a tree reaches itself after looking into trees within, a tag reaches
itself after following its "object" reference), and if we do want
it, it is feasible to implement it.

>  Replacement references will be used by default by all Git commands
>  except those doing reachability traversal (prune, pack transfer and
>  fsck).
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to
More majordomo info at

Reply via email to