## GgitCommit GgitCommit |

## Functions

const gchar * | ggit_commit_get_message_encoding ()
const gchar * | ggit_commit_get_message ()
const gchar * | ggit_commit_get_subject ()
GgitSignature * | ggit_commit_get_committer ()
GgitSignature * | ggit_commit_get_author ()
GgitCommitParents * | ggit_commit_get_parents ()
GgitTree * | ggit_commit_get_tree ()
GgitOId * | ggit_commit_get_tree_id ()
GgitCommit * | ggit_commit_get_nth_ancestor ()

## Properties

GgitCommit * | commit | Read / Write / Construct Only
guint | size | Read

## Types and Values

| GgitCommit
struct | GgitCommitClass
| GgitCommitParents

## Object Hierarchy

        GObject
        ├── GgitCommitParents
        ╰── GgitObjectFactoryBase
            ╰── GgitNative
                ╰── GgitObject
                    ╰── GgitCommit

## Description

## Functions

### ggit_commit_get_message_encoding ()

    const gchar *
    ggit_commit_get_message_encoding (GgitCommit *commit);

Get the encoding for the message of a commit, as a string representing a standard encoding name.

The encoding may be `NULL` if the 'encoding' header in the commit is missing; in that case UTF-8 is assumed.

#### Parameters

commit | a GgitCommit. |

#### Returns

the encoding of the commit message or `NULL`.

[transfer none][nullable]

### ggit_commit_get_message ()

    const gchar *
    ggit_commit_get_message (GgitCommit *commit);

Gets the full message of `commit` . The resulting message is always encoded in UTF-8.

#### Parameters

commit | a GgitCommit. |

#### Returns

the message of the commit.

[transfer none][nullable]

### ggit_commit_get_subject ()

    const gchar *
    ggit_commit_get_subject (GgitCommit *commit);

Gets the subject of `commit` . The subject of a commit is the first line of the commit message (as per convention). The resulting subject is always encoded in UTF-8.

#### Parameters

commit | a GgitCommit. |

#### Returns

the subject of the commit.

[transfer none][nullable]

### ggit_commit_get_committer ()

    GgitSignature *
    ggit_commit_get_committer (GgitCommit *commit);

Gets the committer of `commit` . The returned value must be free'd with `g_object_unref()`.

#### Parameters

commit | a GgitCommit. |

#### Returns

the committer of the commit.

[transfer full][nullable]

### ggit_commit_get_author ()

    GgitSignature *
    ggit_commit_get_author (GgitCommit *commit);

Gets the author of `commit` . The returned value must be free'd with `g_object_unref()`.

#### Parameters

commit | a GgitCommit. |

#### Returns

the author of the commit.

[transfer full][nullable]

### ggit_commit_get_parents ()

    GgitCommitParents *
    ggit_commit_get_parents (GgitCommit *commit);

Gets the parents collection for `commit` .

#### Parameters

commit | a GgitCommit. |

#### Returns

the parents collection of the commit.

[transfer full][nullable]

### ggit_commit_get_tree ()

    GgitTree *
    ggit_commit_get_tree (GgitCommit *commit);

Get the tree object for `commit` .

#### Parameters

commit | a GgitCommit. |

#### Returns

a GgitTree.

[transfer full][nullable]

### ggit_commit_get_tree_id ()

    GgitOId *
    ggit_commit_get_tree_id (GgitCommit *commit);

Get the GgitOId of the tree of `commit` . Note that this is more efficient than getting the tree object with `ggit_commit_get_tree()` because no additional files need to be read from disk.

#### Parameters

commit | a GgitCommit. |

#### Returns

a GgitOId.

[transfer full][nullable]

### ggit_commit_get_nth_ancestor ()

    GgitCommit *
    ggit_commit_get_nth_ancestor (GgitCommit *commit,
                                  guint n,
                                  GError **error);

Gets the commit object that is the n-th generation ancestor of the named commit object, following only the first parents. Passing `0` to the `n` parameter returns another instance of `commit` .

#### Parameters

commit | a GgitCommit. |
n | the requested ancestor. |
error | a GError for error reporting, or `NULL`. |

#### Returns

the `n` ancestor commit.

[transfer full][nullable]

## Types and Values

### GgitCommit

    typedef struct _GgitCommit GgitCommit;

Represents a commit object.

### struct GgitCommitClass

    struct GgitCommitClass {
    };

The class structure for GgitCommitClass.

#### Members

### GgitCommitParents

    typedef struct _GgitCommitParents GgitCommitParents;

Represents the parents of a commit object.

## Property Details

### The `“commit”` property

      “commit”                   GgitCommit *

The commit for the parents collection.

Flags: Read / Write / Construct Only

### The `“size”` property

      “size”                     guint

The size of the parents collection.

Flags: Read

Default value: 0