From: Kris Shannon Date: Thu, 28 Apr 2005 13:34:15 GMT Subject: RT[2/3]: Rename/Code-movement Tracking Message-ID: <5d4799ae05042806344aa9d75f@mail.gmail.com> In-Reply-To: <5d4799ae0504280559109cd00e@mail.gmail.com> IMO adding a new object type tag (or tags) for tracking would fit the git model. Call it "rename" for example (better yet think of a better name) Let the contents be something along the lines of: commit CHANGESET-SHA1 PARENT-TREE-SHA1 /old/path\0/new/path\0 PARENT-TREE-SHA1 /old/path/2\0/new/path/2\0 ... The exact details will depend on the renaming model and I don't care to much at the moment what that turns out to be. This new tag allows the rename data to be added on to commit's from people like linus who don't care about rename. It doesn't reduce security because any can happen to the rename object and that will cover the whole commit (and those who sign the commit are obviously not validating any rename information) The rename objects can be used to assist in automatic merging but from my experience I would agree with linus that if the right way to merge is not really obvious then you probably need user input anyway. -- Kris Shannon