Re: [PATCH] refuse to merge during a merge
- From
- Constantine Plotnikov <constantine.plotnikov@gmail.com>
- Date
- May 28, 2009, 16:00 UTC
- Message-ID
- <85647ef50905280900v274d87ag8d364ea7bd9a97ee@mail.gmail.com>
- In-Reply-To
- <20090527210410.GA14742@localhost>
MERGE_HEAD file could also happen in case of --no-commit option. In that case there might be no conflict and the message would look confusing to the user. I suggest to change a message to "You are in the middle of a uncommitted or conflicted merge." or something like it.
Regards, Constantine
On Thu, May 28, 2009 at 1:04 AM, Clemens Buchacher <drizzd@aon.at> wrote:
Show 39 quoted lines
> The following is an easy mistake to make for users coming from version
> control systems with an "update and commit"-style workflow.
>
> 1. git merge
> 2. resolve conflicts
> 3. git pull, instead of commit
>
> This overrides MERGE_HEAD, starting a new merge with dirty index. IOW,
> probably not what the user intented. Instead, refuse to merge again if a
> merge is in progress.
>
> Reported-by: Dave Olszewski <cxreg@pobox.com>
> Signed-off-by: Clemens Buchacher <drizzd@aon.at>
> ---
>
> builtin-merge.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/builtin-merge.c b/builtin-merge.c
> index 0b58e5e..74a8c8f 100644
> --- a/builtin-merge.c
> +++ b/builtin-merge.c
> @@ -836,7 +836,7 @@ int cmd_merge(int argc, const char **argv, const char *prefix)
> struct commit_list **remotes = &remoteheads;
>
> setup_work_tree();
> - if (read_cache_unmerged())
> + if (read_cache_unmerged() || file_exists(git_path("MERGE_HEAD")))
> die("You are in the middle of a conflicted merge.");
>
> /*
> --
> 1.6.3.1.147.g637c3
>
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>