input: 
  from typing import List
  
  
  class VersionControl:
      def __init__(self, lines: List[str]):
          self.lines = lines
          self.mark = 0
  
      def commit(self):
          """Commit the current state of the code to the version control system.
          Each commit should save the current lines with a unique mark.
  
          >>> vc = VersionControl(["print('Hello, World!')", "a = 10"])
          >>> vc.commit()
          >>> vc.commit()
          """
          self.mark += 1
          log_file = open("log_file.txt", "a+")
          log_file.write(str(self.mark) + ": " + str(self.lines) + "\n")
          log_file.close()
  
      def restore(self):
          """Restore the code to the previous commit.
  
          >>> vc = VersionControl(["print('Hello, World!')", "a = 10"])
          >>> vc.commit()
          >>> vc.restore()
          """
          log_file = open("log_file.txt", "r")
          lines = log_file.readlines()
          to_mark = self.mark - 1
  
          if to_mark >= 0:
              self.mark = to_mark
              parts = lines[to_mark].split(": ", 1)
              self.lines = eval(parts[1])
          log_file.close()
  
output:     
      def show_history(self):
          """Show the history of all commits.
  
          >>> vc = VersionControl(["print('Hello, World!')", "a = 10"])
          >>> vc.commit()
          >>> vc.commit()
          >>> vc.show_history()
          """
          log_file = open("log_file.txt", "r")
          history = log_file.readlines()
          log_file.close()
          for entry in history:
              print(entry.strip())
  