Git::Raw::Branch(3pm)

NAME
Git::Raw::Branch - Git branch class

VERSION
version 0.90

SYNOPSIS
    use Git::Raw;

    # open the Git repository at $path
    my $repo = Git::Raw::Repository -> open($path);

    # create a new branch named 'some_branch'
    $repo -> branch('some_branch', $repo -> head -> target);

DESCRIPTION
Helper class for branch manipulation. Note that a Git branch is nothing more than a Git::Raw::Reference, so this class inherits all methods from it.

WARNING: The API of this module is unstable and may change without warning (any change will be appropriately documented in the changelog).

METHODS

  create( $repo, $name, $target )
Create a new branch given a name and a target object (either a Git::Raw::Commit or a Git::Raw::Tag).

  lookup( $repo, $name, $is_local )
Retrieve the branch corresponding to the given branch name.

  move( $name, $force )
Rename the branch to $name. Note that in order to get the updated branch object, an additional "Git::Raw::Branch->lookup()" is needed.

  upstream( [$upstream] )
Retrieve or set the reference supporting the remote tracking branch, given the local branch. If there is no corresponding supporting reference, this function will return "undef". $upstream may either be a Git::Raw::Reference, a string containing the upstream reference name or "undef". If $upstream is set to "undef", the remote tracking branch association is removed.

  upstream_name( )
Return the name of the reference supporting the remote tracking branch, given the the local branch. If there is no associated remote tracking branch, this function will return "undef".

  remote_name( )
Return the name of remote that the remote tracking branch belongs to, given the local branch. If there is no associated remote tracking branch, this function will return "undef".

  is_head( )
Check if the current local branch is pointed at by HEAD.

AUTHOR
Alessandro Ghedini <alexbio@cpan.org>

Jacques Germishuys <jacquesg@cpan.org>

LICENSE AND COPYRIGHT
Copyright 2012 Alessandro Ghedini.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.