reads directly from fs rather than symlinks
merged buffer branch