Re: [PATCH 2/4] fast-import: define a new option command
- From
Sverre Rabbelier <srabbelier@gmail.com>
- Date
- Nov 23, 2009, 17:39 UTC
- Message-ID
- <fabb9a1e0911230939m56e20812o939456c41becf5fd@mail.gmail.com>
- In-Reply-To
- <20090813172508.GO1033@spearce.org>
Heya,
[picking up a topic on what to do if there's a import-marks from the stream and the commandline]
On Thu, Aug 13, 2009 at 18:25, Shawn O. Pearce <spearce@spearce.org> wrote:
Show 18 quoted lines
> Sverre Rabbelier <srabbelier@gmail.com> wrote: >> On Thu, Aug 13, 2009 at 10:07, Johannes >> Schindelin<Johannes.Schindelin@gmx.de> wrote: >> > ... and will import the marks twice? >> >> Ah, you're right :(. What's the best way to do this? Should we dump >> any previous marks when importing new ones? > > Uh, well, yes. We shouldn't define :5 if it was in the file that > appeared in the stream, but isn't in the file on the command line. > > Worse, what happens if we do this: > > echo "option import-marks=/not/found" \ > | git fast-import --import-marks=my.marks > > I want this to work, even though /not/found does not exist, but > my.marks does. So that does complicate things...
According to the docs it is allowed to specify import-marks multiple times (the latest series does not honor that, and there's apparently no test to verify it). What should the behavior be wrt stream/commandline arguments? Load from stream if present and valid, and also load from commandline? In that case, how do you override what's in the stream?
I think the simplest is to allow the stream to specify a marks file exactly once, and commandline arguments override what's in the stream. Listing import-marks on the commandline is still valid and keeps the old behavior.
Sensible?
-- Cheers, Sverre Rabbelier