code: def find_git_modified_files(repo, upstream_target_branch):
      """Get a set of all modified files, as Diff objects.
  
      The files returned have been modified in git since the merge base of HEAD
      and the upstream of the target branch. We return the Diff objects so that
      we can read only the staged changes.
      """
  
      merge_base = repo.merge_base(
          "HEAD", upstream_target_branch.commit
      )[0]
      for f in merge_base.diff():
          if (
              f.b_path is not None
              and not f.deleted_file
              and f.b_blob.size > 0
          ):
              yield _GitDiffPath(f)
  
imports: import argparse
  import datetime
  import logging
  import os
  import re
  import sys
  from pathlib import Path
  from typing import Optional
  import git
label_desc: Use image node_id 2 for calling a global function with example usage: find_git_modified_files(repo, upstream_target_branch) without return types