## GgitRefSpec GgitRefSpec |

## Synopsis

                        GgitRefSpec;
    GgitRefSpec *       ggit_ref_spec_ref                   (GgitRefSpec *refspec);
    void                ggit_ref_spec_unref                 (GgitRefSpec *refspec);
    const gchar *       ggit_ref_spec_get_source            (GgitRefSpec *refspec);
    const gchar *       ggit_ref_spec_get_destination       (GgitRefSpec *refspec);
    gboolean            ggit_ref_spec_is_forced             (GgitRefSpec *refspec);

## Object Hierarchy

      GBoxed
       +----GgitRefSpec

## Description

## Details

### GgitRefSpec

    typedef struct _GgitRefSpec GgitRefSpec;

Reprensents a git reference specification.

### ggit_ref_spec_ref ()

    GgitRefSpec *       ggit_ref_spec_ref                   (GgitRefSpec *refspec);

Atomically increments the reference count of `refspec` by one. This function is MT-safe and may be called from any thread.

`refspec` : | a GgitRefSpec.
Returns : | a GgitRefSpec.

### ggit_ref_spec_unref ()

    void                ggit_ref_spec_unref                 (GgitRefSpec *refspec);

Atomically decrements the reference count of `refspec` by one. If the reference count drops to 0, `refspec` is freed.

`refspec` : | a GgitRefSpec.

### ggit_ref_spec_get_source ()

    const gchar *       ggit_ref_spec_get_source            (GgitRefSpec *refspec);

Gets the `refspec`'s source.

`refspec` : | a GgitRefSpec.
Returns : | the refspec's source.

### ggit_ref_spec_get_destination ()

    const gchar *       ggit_ref_spec_get_destination       (GgitRefSpec *refspec);

Gets the `refspec`'s destination.

`refspec` : | a GgitRefSpec.
Returns : | the refspec's destination.

### ggit_ref_spec_is_forced ()

    gboolean            ggit_ref_spec_is_forced             (GgitRefSpec *refspec);

Whether updating is done forcefully.

`refspec` : | a GgitRefSpec.
Returns : | if updating is done forcefully.