2017 © Pedro Peláez
 

library buse

Execute git command in several repositories

image

iamluc/buse

Execute git command in several repositories

  • Wednesday, February 10, 2016
  • by iamluc
  • Repository
  • 0 Watchers
  • 6 Stars
  • 8 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 3 Versions
  • 0 % Grown

The README.md

BUSE

About

buse helps managing and executing git commands in several git repositories at the same time., (*1)

buse is currently 'work in progress'. Command and arguments could change., (*2)

Install

git clone https://github.com/iamluc/buse.git
cd buse
composer install

Use

bin/buse

# or if you have build the phar (see build section)
bin/buse.phar

It should display the help message. To have description of a specific command, just type:, (*3)

$> bin/buse help the_command

status

Get status of your repositories, (*4)

$> bin/buse status
buse: master                                                                                                                     
repo2: master / not clean (1 staged, 3 modified)
repo3: dev / not synchronized (1 ahead, 1 behind)

fetch

Fetch your repositories., (*5)

pull

Pull your repositories., (*6)

push

Push your repositories., (*7)

git

Execute a git command in your repositories., (*8)

Note: - 'git' must not be included in the command - you must write the command after '--', (*9)

$> bin/buse git -- log --pretty=oneline -1
buse:
xxxxxxxxxxxx Last commit message buse

repo2:
xxxxxxxxxxxx Last commit message repo2

repo3:
xxxxxxxxxxxx Last commit message repo3

exec

Execute a command in your repositories., (*10)

Note: - you must write the command after '--', (*11)

$> bin/buse exec -- composer install
buse: | Loading composer repositories with package information

tag

Get and create tags., (*12)

clone

Clone repositories. This command needs a configuration file .buse.yml, (*13)

config

Get and set configuration., (*14)

To exclude repositories, update your config typing:, (*15)

$> bin/buse config "global.ignore_repositories" "repo1,repo2"

Configuration

Buse will check if a file .buse.yml exists in the current directory. Note: You can use the --config (ie. buse status --config ~/my-dir) option to change the directory of the config file., (*16)

A basic .buse.yml looks like:, (*17)

global:
    ignore_repositories:
        - workshop-serializer-todo
        - twgit

datatheke:
    repositories:
        datatheke: 'git@github.com:datatheke/datatheke.git'
        datatheke-cli: 'git@github.com:datatheke/datatheke-cli.git'

buse:
    repositories:
        buse: 'git@github.com:iamluc/buse.git'

other:
    repositories:
        super-project: ~

The global section contains the global configuration of buse., (*18)

Others sections are called "groups"., (*19)

If there are "groups" defined in the config file, buse will execute the command for all repositories defined in groups., (*20)

But if buse is called with the --group option (ie. buse status --group datatheke --group buse), the command will be executed only for the repositories defined in the selected groups., (*21)

Without any "groups" found, buse will search for all git repositories in the working directory., (*22)

Even with "groups" in the config file, you can force the search mode using the --no-group option., (*23)

Build

composer install --no-dev
bin/compile

The Versions

10/02 2016

dev-master

9999999-dev

Execute git command in several repositories

  Sources   Download

MIT

The Requires

 

The Development Requires

by Luc Vieillescazes

04/02 2016

v0.0.2

0.0.2.0

Execute git command in several repositories

  Sources   Download

MIT

The Requires

 

The Development Requires

by Luc Vieillescazes

04/03 2015

v0.0.1

0.0.1.0

Execute git command in several repositories

  Sources   Download

MIT

The Requires

 

The Development Requires

by Luc Vieillescazes