public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox•com>
To: Jaime Soriano Pastor <jsorianopastor@gmail•com>
Cc: git@vger•kernel.org
Subject: Re: [PATCH] read-cache.c: Ensure unmerged entries are removed
Date: Tue, 12 Aug 2014 11:39:25 -0700	[thread overview]
Message-ID: <xmqq8umt5z8i.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <1407857491-16633-2-git-send-email-jsorianopastor@gmail.com> (Jaime Soriano Pastor's message of "Tue, 12 Aug 2014 17:31:31 +0200")

Jaime Soriano Pastor <jsorianopastor@gmail•com> writes:

> Wrong implementations of tools that modify the index can left
> some files as merged and unmerged at the same time. Avoid undesiderable
> behaviours by handling this situation.

It is understandable that the way _you_ decided to "handle the
situation" is so obvious to be spelled out to _you_, but that is the
most important design decision that needs to be described here.  Do
you silently remove higher-stage entries when an entry at stage 0
exists?  Do you silently remove stage 0 entry when higher-stage
entries exist?  Do you error out without doing neither?

Silently removing these at runtime may not be something we would
want to do; after all, we do not know if the broken tool actually
wanted to have the higher stage entries, or the merged entry.

Ideally, I think we should error out and let the users figure out
how to proceed (we may of course need to make sure they have the
necessary tools to do so, e.g. "git cat-file blob 0:$path" to
resurrect the contents and "git update-index --cacheinfo" to stuff
the contents into the stages).

Thanks.

  reply	other threads:[~2014-08-12 18:39 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-12 15:31 [PATCH] read-cache.c: Ensure unmerged entries are removed Jaime Soriano Pastor
2014-08-12 15:31 ` Jaime Soriano Pastor
2014-08-12 18:39   ` Junio C Hamano [this message]
2014-08-13 22:10     ` Jaime Soriano Pastor
2014-08-13 23:04       ` Junio C Hamano
2014-08-15 19:50         ` Jaime Soriano Pastor
2014-08-15 21:45           ` Junio C Hamano
2014-08-16 14:51             ` Jaime Soriano Pastor
2014-08-18 16:34               ` Junio C Hamano
2014-08-18 17:23                 ` Jaime Soriano Pastor
2014-08-20 11:25                   ` [PATCH 0/4] Handling unmerged files with merged entries Jaime Soriano Pastor
2014-08-20 11:26                     ` [PATCH 1/4] read_index_unmerged doesn't loop forever if merged stage exists for unmerged file Jaime Soriano Pastor
2014-08-20 11:26                     ` [PATCH 2/4] Error out when adding a file with merged and unmerged entries Jaime Soriano Pastor
2014-08-20 11:26                     ` [PATCH 3/4] Added tests for the case of merged and unmerged entries for the same file Jaime Soriano Pastor
2014-08-20 21:00                       ` Junio C Hamano
2014-08-21 13:51                         ` Jaime Soriano Pastor
2014-08-21 22:21                           ` Junio C Hamano
2014-08-20 11:26                     ` [PATCH 4/4] git update-index --cacheinfo can be used to select a stage when there are merged and unmerged entries Jaime Soriano Pastor
2014-08-20 21:08                       ` Junio C Hamano
2014-08-21 13:57                         ` Jaime Soriano Pastor
2014-08-20 22:19                     ` [PATCH 0/4] Handling unmerged files with merged entries Junio C Hamano
2014-08-21 13:42                       ` Jaime Soriano Pastor
2014-08-21 13:43                         ` [PATCH] Check order when reading index Jaime Soriano Pastor
2014-08-21 13:49                           ` Jaime Soriano Pastor
2014-08-21 13:59                           ` Duy Nguyen
2014-08-21 18:51                           ` Junio C Hamano
2014-08-24 17:57                             ` [PATCH 1/2] " Jaime Soriano Pastor
2014-08-24 17:57                               ` [PATCH 2/2] Loop index increases monotonically when reading unmerged entries Jaime Soriano Pastor
2014-08-24 18:04                                 ` Jaime Soriano Pastor
2014-08-25 17:09                                   ` Junio C Hamano
2014-08-25 17:21                               ` [PATCH 1/2] Check order when reading index Junio C Hamano
2014-08-25 19:44                                 ` Jeff King
2014-08-25 20:52                                   ` Junio C Hamano
2014-08-26 12:08                                     ` Jaime Soriano Pastor
2014-08-26 12:20                                       ` Jeff King
2014-08-26 16:53                                         ` Junio C Hamano
2014-08-26 17:22                                           ` Jaime Soriano Pastor
2014-08-26 17:43                                             ` Junio C Hamano
2014-08-27 19:48                                               ` [PATCH 1/2] read_index_from(): catch out of order entries when reading an index file Jaime Soriano Pastor
2014-08-27 19:48                                                 ` [PATCH 2/2] read_index_unmerged(): remove unnecessary loop index adjustment Jaime Soriano Pastor
2014-08-29  2:16                                                 ` [PATCH 1/2] read_index_from(): catch out of order entries when reading an index file Eric Sunshine
2014-08-29  8:54                                                   ` [PATCH] " Jaime Soriano Pastor
2014-08-29 17:06                                                     ` Junio C Hamano
2014-08-27 19:52                                               ` [PATCH 1/2] Check order when reading index Jaime Soriano Pastor
2014-08-27 21:11                                                 ` Junio C Hamano
2014-08-27 22:13                                                   ` Jaime Soriano Pastor
2014-08-25 20:26                                 ` Jaime Soriano Pastor
2014-08-21 18:40                       ` [PATCH 0/4] Handling unmerged files with merged entries Johannes Sixt
2014-08-21 22:18                         ` Junio C Hamano
2014-08-12 18:31 ` [PATCH] read-cache.c: Ensure unmerged entries are removed Junio C Hamano
2014-08-13 22:10   ` Jaime Soriano Pastor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqq8umt5z8i.fsf@gitster.dls.corp.google.com \
    --to=gitster@pobox$(echo .)com \
    --cc=git@vger$(echo .)kernel.org \
    --cc=jsorianopastor@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox