$ mkdir patches # quilt should preserve hard links and not create new ones $ echo foo > foo $ ln foo foo2 $ ls -l foo | awk '{ print $2 }' > 2 $ quilt new test.diff > Patch %{P}test.diff is now on top $ quilt add foo > File foo added to patch %{P}test.diff $ ls -l foo | awk '{ print $2 }' > 1 $ ls -l %{QUILT_PC}/test.diff/foo | awk '{ print $2 }' > 2 $ echo "foo changed" > foo $ quilt refresh > Refreshed patch %{P}test.diff $ quilt new test2.diff > Patch %{P}test2.diff is now on top $ quilt add foo > File foo added to patch %{P}test2.diff $ ls -l foo | awk '{ print $2 }' > 1 $ ls -l %{QUILT_PC}/test2.diff/foo | awk '{ print $2 }' > 1 $ echo "foo changed again" > foo $ quilt refresh > Refreshed patch %{P}test2.diff $ quilt pop -q > Removing patch %{P}test2.diff > Now at patch %{P}test.diff $ ls -l foo | awk '{ print $2 }' > 1 $ ls -l %{QUILT_PC}/test.diff/foo | awk '{ print $2 }' > 2 $ quilt pop -q > Removing patch %{P}test.diff > No patches applied $ ls -l foo | awk '{ print $2 }' > 2 # quilt revert should not create hard links $ echo bar > bar $ quilt push -q > Applying patch %{P}test.diff > Now at patch %{P}test.diff $ quilt add bar > File bar added to patch %{P}test.diff $ echo "bar changed" > bar $ quilt revert bar > Changes to bar in patch %{P}test.diff reverted $ ls -l bar | awk '{ print $2 }' > 1 $ quilt pop -q > Removing patch %{P}test.diff > No patches applied