gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnu-arch-users] Re: FYI, More arch errors while grying to commit 'clean


From: Miles Bader
Subject: [Gnu-arch-users] Re: FYI, More arch errors while grying to commit 'clean changesets'
Date: Tue, 16 Nov 2004 10:22:09 +0900

John A Meinel <address@hidden> writes:
> Partial commits don't support add/delete/rename. The problem is with a
> partial commit you can't tell the difference. For example:

I think there are various possible ways of supporting these operations
in partial commits, it's just that there's no agreement on what's "best"
(the last time I remember it being discussed, there was an awful lot of
waffling), and of course nobody has implemented them.

The one I like is to automatically extend the limit to include the other
half of a rename; I think in the usual case, this could be done without
a full inventory by doing an id->name lookup of every specified file in
the revision library's ,,index file.

E.g., in your example:

> $ tla mv file2.txt file3.txt
> $ tla commit "moved file2.txt" -- file3.txt

If the orig version had file-id "XYZ" for file1.txt, and "PQR" for
file2.txt, the commit command would lookup the orig name for "file3.txt"
by using it's file-id "XYZ", find file1.txt, and act as if the user had
specified:

  tla commit ... -- file1.txt file3.txt

[Of course this procedure iterates until the limit cannot be extended
anymore.]

I think for the vast majority of cases this is what the user wants.

A more-annoying-but-possibly-safer alternative is to use the above
procedure to check the limit for completeness, and abort with an error
if there were any renames across the limit boundary.  Then the user
could commit renames by being sure to manually specify both the old and
new names.

-Miles
-- 
My spirit felt washed.  With blood.  [Eli Shin, on "The Passion of the Christ"]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]