Make `SCMTool.get_file()` take `base_commit_id`.
Review Request #7265 — Created April 29, 2015 and submitted — Latest diff uploaded
All SCMTool implementations should now take keyword arguments and a
base_commit_id argument. All internal implementations have been
converted and third party tools will cause a deprecation warning if
they do not have the proper method signature.
The HgTool now takes advantage of this `base_commit_id` argument when
fetching files (since hg git diffs do not include index lines which
we use to determine what revisions to fetch). If `base_commit_id` is
provided it will override anything parsed from the diff.
The same applies to SCMTool.file_exists()
New tests, unit tests pass, posted hg diff now uses the provided base_commit_id.