PHP library for manipulations on git repository. Based on coyl/Git.php and it's forks

2.0.0 2022-10-31 03:54 UTC

This package is auto-updated.

Last update: 2024-10-29 05:59:56 UTC


README

Branch Logo

Tests

Branch

Branch is a PHP Git library based on kbjr/Git.php

Description

Branch is a PHP Git repository control library. Allows the running of any git command from a PHP class. Runs git commands using proc_open, not exec or the type, therefore it can run in PHP safe mode.

Requirements

A system with git installed

Installation

To install via composer, you can simply run:

composer require lotharthesavior/branch

Basic Use

Open Repository

$console = new Console;
$repo = Git::open($console, '/path/to/repo'); // GitRepo

Create Repository

$console = new Console;
$repo = Git::create($console, '/path/to/repo'); // GitRepo

Stage Changes

$repo->add('.');

Commit

$repo->commit('Some commit message');

Clone

$localPath = 'local-repo';
$repo = 'repo-url';
$repo->clone( $repo, $localPath );

Push

$repo->push('origin', 'master');

Branches

Create

$repo->branchNew( 'name-for-the-branch' );

Get

$repo->branchGet(); // array

Get Active Branch

// Git\GitRepo;
$repo;

$repo->getActiveBranch(); // string

Remotes

Get

$repo->remote(); // \Git\DTO\Remote[]

Add

$name = 'name';
$address = 'url';
$type = '(fetch)';
$remote = new Remote($name, $address, $type);
$repo->remoteAdd($remote);

Push

$branch = new Branch('master');
$remote = new Remote('name', 'url', '(push)');
$repo->push($remote, $branch);

Pull

$branch = new Branch('master');
$remote = new Remote('name', 'url', '(fetch)');
$repo->pull($remote, $branch);

Description

Set

$repo->setDescription( 'Some Description' );

Get

$repo->getDescription(); // string