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

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

[Gnu-arch-users] selected files commit and ,,inode-sigs


From: Michael Teichgräber
Subject: [Gnu-arch-users] selected files commit and ,,inode-sigs
Date: Thu, 30 Oct 2003 14:27:29 +0100
User-agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.2 (gnu/linux)

Hello,

in a project tree with some modified files I have done a selected
files commit involving only one of these modified files. Now, since
there still are uncommited changes in this tree, I suppose "tla
what-changed" should list them.

For most files it does, but one file is skipped. If I move
,,inode-sigs away or delete the file's corresponding line within the
current inode-sigs file, it is listed too.

The output of stat on each of the modified files matches the
corresponding lines in ,,inode-sigs. There is one thing different for
the file above: It has got only some of its contents moved to another
position, so that its length hasn't changed. Therefore it will pass

    if (a_stat.st_size != b_stat.st_size)
      return 1;

in arch_binary_files_differ(), and some lines later report the file
being unchanged, since "shortcut_applies" will be true. That's why the
file, other than modified files with size changes, will not show up in
the what-changed output.

May it be a problem for selected files commits in general that
arch_snap_inode_sig() is called in commit.c for the project root, but
this root not reflecting a particular revision, since there still may
be modified files around when the snap is done? Perhaps this
optimization should be disabled when doing a "commit -- files".


-- 
Michael




reply via email to

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