def commitFileAtPathForCommitter(self, aPath, committer):
        self.__chdirToMatchPath(aPath)
        # get the author information
        author_name = committer.first_name + ' ' + committer.last_name
        author_name = author_name if author_name != ' ' else committer.username
        author_email = (committer.email or 
                        "%s@munkiwebadmin" % committer.username)
        author_info = '%s <%s>' % (author_name, author_email)

        # get the status of the file at aPath
        statusResults = self.runGit(['status', aPath])
        statusOutput = statusResults['output']
        if statusOutput.find("new file:") != -1:
            action = 'created'
        elif statusOutput.find("modified:") != -1:
            action = 'modified'
        elif statusOutput.find("deleted:") != -1:
            action = 'deleted'
        else:
            action = 'did something with'

        # determine the path relative to REPO_DIR for the file at aPath
        manifests_path = os.path.join(REPO_DIR, 'manifests')
        itempath = aPath
        if aPath.startswith(manifests_path):
            itempath = aPath[len(manifests_path):]

        # generate the log message
        log_msg = ('%s %s manifest \'%s\' via %s'
                  % (author_name, action, itempath, APPNAME))
        self.runGit(['commit', '-m', log_msg, '--author', author_info])
        if self.results['returncode'] != 0:
            print "Failed to commit changes to %s" % aPath
            print self.results['error']
            return -1
        return 0
Commits the file at 'aPath'. This method will also automatically
dataset/ETHPy150Open munki/munkiwebadmin/manifests/models.py/MunkiGit.commitFileAtPathForCommitter