2013-11-13 04:10:52 -05:00
# oh-my-git!
2013-08-20 09:52:00 -04:00
2013-09-06 09:01:49 -04:00
2013-09-11 14:08:38 -04:00
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/01-not in a git repo.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/02-in a git repo.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/03-on master.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/04-untracked-add-commit.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/05-rm.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/06-a typical session.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/07-tracking branch.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/08-explicit upstream.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/09-ahead.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/10-behind.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/11-diverge.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/12-detached.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/samples/13-stash.jpg )
![alt tag ](https://raw.github.com/arialdomartini/oh-my-git-gh-pages/gh-pages/images/shut-up.gif )
2013-09-06 09:20:39 -04:00
2013-11-13 04:10:52 -05:00
# Bash
## Installation
2013-09-12 01:50:14 -04:00
One liner for Mac:
cd ~ & & git clone https://github.com/arialdomartini/oh-my-git.git & & echo source $HOME/oh-my-git/prompt.sh >> .profile
One liner for Ubuntu:
cd ~ & & git clone https://github.com/arialdomartini/oh-my-git.git & & echo source $HOME/oh-my-git/prompt.sh >> .bashrc
Then, set your Terminal font to Monospace (or edit oh-my-git and change the symbols used)
2013-11-13 04:10:52 -05:00
## Manual installation
2013-11-16 05:16:03 -05:00
Fork the repo and git clone it in your home directory.
2013-09-13 10:04:57 -04:00
2013-09-06 09:20:39 -04:00
Then add
source $HOME/oh-my-git/prompt.sh
2013-09-13 10:04:57 -04:00
to the bash startup file (`~/.profile` on Mac, `~/.bashrc` on Linux)
2013-09-06 09:20:39 -04:00
2013-11-16 18:18:41 -05:00
If you prefer to keep oh-my-git repository in a different directory, just modify the startup file accordingly to the chosen position
2013-11-16 05:16:03 -05:00
source /wherever-you-want/oh-my-git/prompt.sh
2013-11-13 04:09:39 -05:00
2013-11-13 04:10:52 -05:00
# zsh
## Installation
2013-11-13 06:42:27 -05:00
With antigen installed, just add
2013-11-13 06:00:49 -05:00
antigen-bundle arialdomartini/oh-my-git
antigen theme arialdomartini/oh-my-git-themes arialdo-granzestyle
to your `.zshrc` file.
2013-11-13 04:09:39 -05:00
2013-11-13 06:38:05 -05:00
[`oh-my-git-themes` ](https://github.com/arialdomartini/oh-my-git-themes ) includes two themes: `arialdo-granzestyle` which is inspired to the great [Granze theme ](https://github.com/Granze/G-zsh-theme-2 ), and `arialdo-pathinline` .
2013-11-13 06:00:49 -05:00
2013-11-13 06:42:27 -05:00
## How to install antigen
2013-11-13 06:00:49 -05:00
2013-11-13 06:42:27 -05:00
[antigen ](https://github.com/zsh-users/antigen ) is a plugin manager for `zsh` .
Installing antigen is straightforward:
2013-11-13 04:09:39 -05:00
cd ~ & & git clone https://github.com/zsh-users/antigen.git .antigen
2013-11-13 06:00:49 -05:00
Then, edit your `.zshrc` file including
2013-11-13 04:09:39 -05:00
source "$HOME/.antigen/antigen.zsh"
2013-11-13 04:10:52 -05:00
antigen-bundle arialdomartini/oh-my-git
2013-11-13 04:09:39 -05:00
antigen theme arialdomartini/oh-my-git-themes arialdo-granzestyle
antigen-apply
2013-11-13 06:00:49 -05:00
I also strongly suggest to include
2013-11-13 04:09:39 -05:00
antigen-use oh-my-zsh
antigen-bundle git
antigen-bundle zsh-users/zsh-syntax-highlighting
antigen-bundle zsh-users/zsh-history-substring-search
2013-11-13 06:00:49 -05:00
which are optional, but very cool.
2013-11-13 04:09:39 -05:00
2013-11-13 06:42:27 -05:00
Then, restart zsh.
antigen will download and install all that's needed.
2013-11-13 04:09:39 -05:00
2014-05-28 03:05:03 -04:00
# Disabling oh-my-git
oh-my-git can be disabled on a per-repository basis. Just add a
[oh-my-git]
2014-05-28 17:07:43 -04:00
enabled = false
2014-05-28 03:05:03 -04:00
in the `.git/config` file of a repo to revert to the original prompt for that particular repo. This could be handy when working with very huge repository, when the git commands invoked by oh-my-git can slow down the prompt.
2013-11-13 04:10:52 -05:00
# Known bugs and limitations
2013-11-20 01:08:18 -05:00
* git v1.8.4 or newer is required
2013-09-06 09:44:54 -04:00
* It works weird on brand new repositories, before the first commit
2013-09-13 10:04:57 -04:00
* It has been tested on Mac and Ubuntu only. I never managed to make it work on Cygwin
2013-09-12 01:50:14 -04:00
* You need an unicode font (like Menlo or Monaco on Mac OS X, or Monospace on Ubuntu)
2013-09-13 10:04:57 -04:00
* With the default Ubuntu terminal font, some symbols are not properly displayed. Use Monospace, or edit the `prompt.sh` file and choose other symbols