def METHOD_NAME(self, fpath):
    """
    Given the path to a tracked file with a merge conflict, return
    the contents of the base version (common ancestor), the local version
    (ours), and the remote version (theirs).
    """
    entries = self.git("ls-files", "-u", "-s", "-z", "--", fpath).split("\x00")
    entries = tuple(entry for entry in entries if entry)
    if not len(entries) == 3:
        return
    # 100644 ffba696331701a1007320c5df88c50f4b0cf0ab9 1   example.js
    # 100644 913b897df13331fec0c959be5a994be48c7dc395 2   example.js
    # 100644 0c11353d13f667542c5b4eeddb7af620ff0055a0 3   example.js
    #        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    base_hash, ours_hash, theirs_hash = (entry.split(" ")[1] for entry in entries)
    base_content = self.git("show", base_hash, decode=False)
    ours_content = self.git("show", ours_hash, decode=False)
    theirs_content = self.git("show", theirs_hash, decode=False)
    return base_content, ours_content, theirs_content