# git_repo_upgrader
[![Gem](https://img.shields.io/gem/v/git_repo_upgrader?_color=default&style=plastic&logo=ruby&logoColor=red)](https://rubygems.org/gems/git_repo_upgrader)
![downloads](https://img.shields.io/gem/dt/git_repo_upgrader?color=blue&style=plastic)
[![License: MIT](https://img.shields.io/badge/License-MIT-gold.svg?style=plastic&logo=mit)](LICENSE)
> Copy specific files from another git repository into your current project and provide (optional) automatic commits.
Useful for manually integrated files from another git project. Do upgrades by one command.
```diff
- early version, not to be meant for production use
```
# Contents
* [Installation](#installation)
* [Usage](#usage)
* [Documentation](#documentation)
* [Contributing](#contributing)
## Installation
### Prerequisites
Git must be installed and bin directory must be included in PATH variable.
### Add gem to your ruby project
Add this line to your application's Gemfile:
```ruby
gem 'git_repo_upgrader'
```
And then execute:
$ bundle install
Or install it yourself as:
$ gem install git_repo_upgrader
## Common information
TODO
## Usage
At best create a new rake task containing a options hash and then run #upgrade.
See the examples below for option hashes.
### Examples
#### Basic
```ruby
options = {
repo: {
uri: 'https://github.com/username/project.git',
branch: 'develop',
},
files_to_copy: {
'dist/app.bundle.js' => 'web/js/lib/project/app.bundle.js',
'dist/app.bundle.css' => 'web/js/lib/project/app.bundle.css',
# copy a whole directory recursively
'dist/img' => 'web/js/lib/project/img',
},
commit: 'prompt' # 'prompt' by default, other options: 'false','auto'
}
GitRepoUpgrader.upgrade options
```
## Documentation
Check out the doc at RubyDoc
https://www.rubydoc.info/gems/git_repo_upgrader
## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/magynhard/git_repo_upgrader. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.