Christian Couder <chrisc...@tuxfamily.org> writes:

> If -f option, which means '--force', is used, we can allow an object
> to be replaced with one of a different type, as the user should know
> what (s)he is doing.
>
> Signed-off-by: Christian Couder <chrisc...@tuxfamily.org>
> ---

This does not matter in a larger picture, but between 1/11 and this
patch, there is a window where an operation that has been useful in
some workflows becomes unavailable to the user.

For future reference, it would be better to do this as a part of
1/11, to make sure that there always is an escape hatch available to
the users.

>  builtin/replace.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/builtin/replace.c b/builtin/replace.c
> index 9a94769..95736d9 100644
> --- a/builtin/replace.c
> +++ b/builtin/replace.c
> @@ -103,7 +103,7 @@ static int replace_object(const char *object_ref, const 
> char *replace_ref,
>  
>       obj_type = sha1_object_info(object, NULL);
>       repl_type = sha1_object_info(repl, NULL);
> -     if (obj_type != repl_type)
> +     if (!force && obj_type != repl_type)
>               die("Objects must be of the same type.\n"
>                   "'%s' points to a replaced object of type '%s'\n"
>                   "while '%s' points to a replacement object of type '%s'.",
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to