Ggit.Repository.save_stash

### Method

# Ggit Repositorysave_stash

#### Declaration [src]

    GgitOId*
    ggit_repository_save_stash (
      GgitRepository* repository,
      GgitSignature* stasher,
      const gchar* message,
      GgitStashFlags flags,
      GError** error
    )

#### Description [src]

Saves the local modifications to a new stash. It returns the commit containing the stashed state. This commit is also the target of the direct reference refs/stash.

#### Parameters

`stasher` | `GgitSignature`
| A `GgitSignature`.
| The data is owned by the caller of the function.
`message` | `const gchar*`
| Description along with the stashed state or `NULL` to be autogenerated.
| The data is owned by the caller of the function.
| The value is a NUL terminated UTF-8 string.
`flags` | `GgitStashFlags`
| A `GgitStashFlags` to control the stashing process.
`error` | `GError **`
| The return location for a `GError*`, or `NULL`.

#### Return value

Returns: | `GgitOId`
| A new object id of the commit containing the stashed state.
| The caller of the method takes ownership of the data, and is responsible for freeing it.
| The return value can be `NULL`.