public interface

Commit

implements MinimalCommit PropertySupport
com.atlassian.stash.commit.Commit
Known Indirect Subclasses

Class Overview

Describes a single commit. A commit represents a snapshot of a repository at a given point in time, with additional metadata detailing who authored the commit and when, any message provided, and some number of parents (which may be zero). Parents represent a commit's direct ancestors. Commits generally have a single parent, but:

  • Commits which merge multiple streams of work may have multiple parents
    • For SCMs which support merge commits, the exact number of possible parents is SCM-specific
  • A repository will generally include a "root commit", the first commit to the repository, which will not have a parent
    • Whether or not a repository can have multiple root commits is SCM-specific

Summary

Fields
public static final Function<CommitPerson> TO_AUTHOR
[Expand]
Inherited Fields
From interface com.atlassian.stash.commit.MinimalCommit
Public Methods
@Nonnull Person getAuthor()
@Nonnull Date getAuthorTimestamp()
@Nullable String getMessage()
@Nonnull Collection<MinimalCommit> getParents()
@Nullable Repository getRepository()
Retrieves the repository this commit was loaded from, if it's available.
[Expand]
Inherited Methods
From interface com.atlassian.stash.commit.MinimalCommit
From interface com.atlassian.stash.content.AttributeSupport
From interface com.atlassian.stash.property.PropertySupport

Fields

public static final Function<CommitPerson> TO_AUTHOR

Public Methods

@Nonnull public Person getAuthor ()

Returns
  • the author of the commit

@Nonnull public Date getAuthorTimestamp ()

Returns
  • the timestamp when the commit was authored

@Nullable public String getMessage ()

Returns
  • the commit message

@Nonnull public Collection<MinimalCommit> getParents ()

Returns
  • the commit's parents, which may be empty for the initial commit to a repository but will never be null

@Nullable public Repository getRepository ()

Retrieves the repository this commit was loaded from, if it's available.

Note: For reasons of performance and conciseness this field may be null depending on the service used to construct this commit. If an explicit repository context has been provided by some other mechanism (for example, web-fragments on the commit page will have an explicit 'repository' object in their render context) it is preferable to use that instead of this.

Returns
  • the repository that this commit belongs to