Wiggle while you work
'diff' and 'patch' are great tools for communicating, reviewing and applying changes to text files such as program source code. They are even better when the functionality is included in a distributed content tracker such as 'git'.
However in a world of highly parallel development we are often faced with conflicting changes which 'patch' cannot resolve. Resolving these by hand can get boring.
'wiggle' is a tool that helps you apply patches that 'patch' cannot handle by finding a best-possible match and allowing you to review the resulting merge to accept or decline each hunk, falling back on manual resolution only in cases of serious conflict.
This talk will describe a variant of the 'diff' algorithm that is used for finding best-matches and will show how this can help provide pain-free conflict resolution.
Not being the adventurous type, Neil's first real job was at the
University he graduated from (UNSW) maintaining the UNIX computers
(Level-7 from Bell Labs) he had been taught on, from the kernel up.
The decade of the 90's required a bit of experimentation as purchasing
decisions forced him to work with various proprietary Unicies, making
kernel hacking less of an option. Mail systems, software
installation, user-account management and related enterprises had to
keep him entertained until the turn of the millennium brought him into
contact with Linux and kernel-hacking could begin again.
Since then, Neil has been maintaining the NFS server (now handed over to others) and md/RAID in Linux - because no-one else was there to do it. This has lead to the exploration of much of the filesystem, memory management, and block device code in the kernel while fixing bugs and implementing or reviewing new features.
When not on his computer (which his wife says isn't often enough)
Neil enjoys his family, cycling, and serving his Lord.