Class ReflogWriter

java.lang.Object
org.eclipse.jgit.internal.storage.file.ReflogWriter

public class ReflogWriter extends Object
Utility for writing reflog entries using the traditional one-file-per-log format.
  • Constructor Details

    • ReflogWriter

      public ReflogWriter(RefDirectory refdb)
      Create writer for ref directory.
      Parameters:
      refdb - a RefDirectory object.
    • ReflogWriter

      public ReflogWriter(RefDirectory refdb, boolean forceWrite)
      Create writer for ref directory.
      Parameters:
      refdb - a RefDirectory object.
      forceWrite - true to write to disk all entries logged, false to respect the repository's config and current log file status.
  • Method Details

    • refLockFor

      public static String refLockFor(String name)
      Get the ref name to be used for when locking a ref's log for rewriting.
      Parameters:
      name - name of the ref, relative to the Git repository top level directory (so typically starts with refs/).
      Returns:
      the name of the ref's lock ref.
    • create

      public ReflogWriter create() throws IOException
      Create the log directories.
      Returns:
      this writer.
      Throws:
      IOException - if an IO error occurred
    • log

      public ReflogWriter log(String refName, ReflogEntry entry) throws IOException
      Write the given entry to the ref's log.
      Parameters:
      refName - a String object.
      entry - a ReflogEntry object.
      Returns:
      this writer
      Throws:
      IOException - if an IO error occurred
    • log

      public ReflogWriter log(String refName, ObjectId oldId, ObjectId newId, PersonIdent ident, String message) throws IOException
      Write the given entry information to the ref's log
      Parameters:
      refName - ref name
      oldId - old object id
      newId - new object id
      ident - a PersonIdent
      message - reflog message
      Returns:
      this writer
      Throws:
      IOException - if an IO error occurred
    • log

      public ReflogWriter log(RefUpdate update, String msg, boolean deref) throws IOException
      Write the given ref update to the ref's log.
      Parameters:
      update - a RefUpdate
      msg - reflog message
      deref - whether to dereference symbolic refs
      Returns:
      this writer
      Throws:
      IOException - if an IO error occurred