From 0088ef86dd3f5d3a2c71a506b74a39d044f678be Mon Sep 17 00:00:00 2001 From: Diogo Alexsander Cavilha Date: Thu, 6 Dec 2018 13:41:11 -0200 Subject: [PATCH 1/7] :pencil: Improve base path definitions --- CHANGELOG.md | 4 ++++ commands.sh | 15 +++------------ prompt.sh | 27 +++++---------------------- version.sh | 2 +- 4 files changed, 13 insertions(+), 35 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b0859e..17d542b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Fancy Git Changelog +### v5.2.3 + +- Improve base path definitions + ### v5.2.2 - Update README.md diff --git a/commands.sh b/commands.sh index c0cae9d..d86bf09 100755 --- a/commands.sh +++ b/commands.sh @@ -15,8 +15,6 @@ fg_show_version() { fg_update() { local current_dir - local mode_file - local base_path local current_date current_date=$(date +%Y-%m-%d) @@ -28,20 +26,13 @@ fg_update() { echo "$current_date" > ~/.fancy-git/last_update_at - base_path="/home/$USER/.fancy-git" - - if [ ! -d "$base_path" ]; then - base_path="/Users/$USER/.fancy-git" - fi - current_dir=$(pwd) - mode_file="$base_path/mode" cd ~/.fancy-git/ && git pull origin master - if [ ! -f "$mode_file" ]; then - touch -f "$mode_file" - echo "default" > "$mode_file" + if [ ! -f ~/.fancy-git/mode ]; then + touch -f ~/.fancy-git/mode + echo "default" > ~/.fancy-git/mode fi cd "$current_dir" || return diff --git a/prompt.sh b/prompt.sh index fa53e2d..504d32c 100644 --- a/prompt.sh +++ b/prompt.sh @@ -6,33 +6,16 @@ # Changes de prompt by loading the style configured in ~/.fancygit/mode file. function fancygit_prompt_changer() { - local mode - local fallback_style - local styles_dir - local style_path - local prompt_command - local prompt_command_fallback - local base_path + local style - base_path="/home/$USER/.fancy-git" + style=$(cat ~/.fancy-git/mode) - if [ ! -d "$base_path" ]; then - styles_dir="/Users/$USER/.fancy-git" - fi - - mode=$(cat ~/.fancy-git/mode) - fallback_style="default.sh" - styles_dir="$base_path/prompt_styles" - style_path="$styles_dir/$mode.sh" - prompt_command=". $style_path" - prompt_command_fallback=". $styles_dir/$fallback_style" - - if [ -e "$style_path" ]; then - eval "$prompt_command" + if [ -e ~/.fancy-git/prompt_styles/"$style.sh" ]; then + . ~/.fancy-git/prompt_styles/"$style.sh" return fi - eval "$prompt_command_fallback" + . ~/.fancy-git/prompt_styles/default.sh } fancygit_prompt_changer diff --git a/version.sh b/version.sh index efb3a1c..ab955d0 100644 --- a/version.sh +++ b/version.sh @@ -3,4 +3,4 @@ # Author: Diogo Alexsander Cavilha # Date: 11.17.2017 -FANCYGIT_VERSION="5.2.2" +FANCYGIT_VERSION="5.2.3" From 2c869cfe5f700d0d6336ed11c885f18967f78b16 Mon Sep 17 00:00:00 2001 From: Diogo Alexsander Cavilha Date: Thu, 6 Dec 2018 19:16:10 -0200 Subject: [PATCH 2/7] :pencil: Just organize the completion file config --- fancygit-completion | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/fancygit-completion b/fancygit-completion index c8076d4..09b4d6d 100644 --- a/fancygit-completion +++ b/fancygit-completion @@ -8,19 +8,20 @@ _fancygit() { -v \ --version \ update \ - simple \ + configure-fonts \ + human \ default \ double-line \ + simple \ simple-double-line \ - human dark \ + dark \ dark-double-line \ light \ - light-double-line \ - configure-fonts + light-double-line ' if [[ ${cur} == * ]] ; then - COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) + COMPREPLY=($(compgen -W "${opts}" -- ${cur})) return 0 fi } From 55d3182a0627300a8ad4fc0b6ea5d16b0aa9f54c Mon Sep 17 00:00:00 2001 From: Diogo Alexsander Cavilha Date: Thu, 6 Dec 2018 19:57:56 -0200 Subject: [PATCH 3/7] :books: Update README --- README.md | 82 +++++++++++++++++++++++++++++-------------------- images/001.png | Bin 7070 -> 0 bytes images/002.png | Bin 14247 -> 0 bytes images/003.png | Bin 19039 -> 0 bytes 4 files changed, 48 insertions(+), 34 deletions(-) delete mode 100644 images/001.png delete mode 100644 images/002.png delete mode 100644 images/003.png diff --git a/README.md b/README.md index 88e6a79..1440ca2 100644 --- a/README.md +++ b/README.md @@ -29,11 +29,26 @@ curl -sS https://raw.githubusercontent.com/diogocavilha/fancy-git/master/uninsta If you can't find the font, it's still possible to install it manually by running `fancygit configure-fonts` or even installing the ttf file placed at `~/.fancy-git/fonts/SourceCodePro+Powerline+Awesome+Regular.ttf`. +### Git suggested colors + +```bash +git config --global color.ui true + +git config --global color.diff.meta "yellow bold" +git config --global color.diff.old "red bold" +git config --global color.diff.new "green bold" +git config --global color.status.added "green bold" +git config --global color.status.changed "yellow" +git config --global color.status.untracked "cyan" +``` + +I suggest you to use this scheme color because fancygit will paint the background branch or showing icon colors, most of the time, according to the current repo status. + ### Overview As a picture is worth a thousand words... -**Default mode** +**Default style** ![001](https://github.com/diogocavilha/fancy-git/blob/master/images/default_001.png) ![002](https://github.com/diogocavilha/fancy-git/blob/master/images/default_002.png) @@ -45,17 +60,27 @@ As a picture is worth a thousand words... > In case you are in doubt about what some icon means, you can type `fancygit -h` or `fancygit --help`. -**Simple mode** +If you don't want to be too "fancy" (as I don't), you can choose using the **simple style**. -If you're running it on a server and you don't want to be too "fancy", you can choose using the simple mode. +In order to change to the **simple style** you can type `fancygit simple`. And if you want to return to the **default style** (colored), you can type `fancygit default`. -> Once you're using the simple mode, it'll not show you lots of cool informations about the git repository. The only information it'll give you is the branch name and whether or not it has changes. +There are a bit of styles you can choose from. Here you have a list of available styles and their corresponding command. -In order to change to the **simple mode** you can type `fancygit simple`. And if you want to return to the **default mode** (colored), you can type `fancygit default`. +> In case you are in doubt about which styles are available, you can type `fancygit -h` or `fancygit --help`. -![001](https://github.com/diogocavilha/fancy-git/blob/master/images/001.png) -![002](https://github.com/diogocavilha/fancy-git/blob/master/images/002.png) -![003](https://github.com/diogocavilha/fancy-git/blob/master/images/003.png) +### Styles + +| Command | Description +| --------------------------- | --------------------------------------------------------- +| fancygit simple | `simple` style. +| fancygit simple-double-line | The same as `simple` style but the cursor gets waiting on next line. +| fancygit default | Colored style. (This is the fallback style). +| fancygit double-line | The same as `default` style but the cursor gets waiting on next line. +| fancygit human | Make prompt more human readable. +| fancygit dark | Like `default` style but with darker colors. +| fancygit dark-double-line | The same as `dark` style but the cursor gets waiting on next line. +| fancygit light | The opposite of `dark` style. +| fancygit light-double-line | The same as `light` style but the cursor gets waiting on next line. ### Commands @@ -63,39 +88,28 @@ In order to change to the **simple mode** you can type `fancygit simple`. And if | ------------------------ | --------------------------------------------------------- | fancygit -h, --help | Show this help. | fancygit -v, --version | Show the fancygit version. -| fancygit update | Update fancygit code with the last release from github. -| fancygit configure-fonts | Install font in order to render icons properly. (only for colored styles). +| fancygit update | Update fancygit code with the latest release from github. +| fancygit configure-fonts | Install font in order to render icons properly. This font is good if you are using some of these styles: `default`, `double-line`, `dark`, `dark-double-line`, `light`, `light-double-line`. -### Styles +### Aliases -| Command | Description -| --------------------------- | --------------------------------------------------------- -| fancygit simple | Change prompt to the simple style. -| fancygit simple-double-line | Change prompt to the simple style in double line. -| fancygit default | Change prompt to the default (colored) style. (This is the fallback style). -| fancygit double-line | Change prompt to the default (colored) style in double line. -| fancygit human | Change prompt to the human readable style. -| fancygit dark | Change prompt to the dark style. -| fancygit dark-double-line | Change prompt to the dark style in double line. -| fancygit light | Change prompt to the light style. -| fancygit light-double-line | Change prompt to the light style in double line. +Here we got a list of useful aliases you can use when working. -### Git suggested colors +They seem to be not that interesting, but believe me, after getting used to them, your productivity will increase considerably when working with git repos. -```bash -git config --global color.ui true +For example, what if you could replace `git push origin ` for `gpsob`? Much smaller command, isn't it?. That's is possible but what, for goodness sake, means `gpsob`? -git config --global color.diff.meta "yellow bold" -git config --global color.diff.old "red bold" -git config --global color.diff.new "green bold" -git config --global color.status.added "green bold" -git config --global color.status.changed "yellow" -git config --global color.status.untracked "cyan" -``` +Well, here goes a little explanation: -I suggest you to use this scheme color because fancygit will paint the background branch or showing icon colors, most of the time, according to the current repo status. +`gps + o + b` -### Aliases +`gps` = `git push` + +`o` = `origin` + +`b` = ``... Yes, it will get the branch you're working on. + +Basically, most of the Fancy Git aliases work this way. | Alias | Command | Description | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------- diff --git a/images/001.png b/images/001.png deleted file mode 100644 index 329b8ce48b67d7972d25005ae6c668c7fda7ad3e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7070 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 CN??=# diff --git a/images/003.png b/images/003.png deleted file mode 100644 index ec6396fd82c56693e7f9929b5b0cfdf66a829339..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19039 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 z 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 Date: Thu, 6 Dec 2018 20:02:54 -0200 Subject: [PATCH 4/7] :sparkles: Add help description Add description for the indicator symbols that show up when in simple style. --- help.sh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/help.sh b/help.sh index ae1a3d2..d27174b 100644 --- a/help.sh +++ b/help.sh @@ -35,6 +35,14 @@ echo " Fancy Git v$FANCYGIT_VERSION (c) $fg_current_year by Diogo Alexsander Cav  = There are stashes.  = There are commits waiting to be pushed. + ICONS MEANING FOR SIMPLE STYLE + + ? = There are untracked files. + +- = There are modified files. + > = There are added files waiting to be committed. + ~ = There are stashes. + N^ = There are commits waiting to be pushed. Where N is the number of commits to be pushed. + ALIASES gs Show git status. From 505b65c505756eed1e783b30c8c56a23c5bb21d7 Mon Sep 17 00:00:00 2001 From: Diogo Alexsander Cavilha Date: Thu, 6 Dec 2018 20:06:00 -0200 Subject: [PATCH 5/7] :pencil: Improve description --- help.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/help.sh b/help.sh index d27174b..6366d03 100644 --- a/help.sh +++ b/help.sh @@ -41,7 +41,7 @@ echo " Fancy Git v$FANCYGIT_VERSION (c) $fg_current_year by Diogo Alexsander Cav +- = There are modified files. > = There are added files waiting to be committed. ~ = There are stashes. - N^ = There are commits waiting to be pushed. Where N is the number of commits to be pushed. + N^ = There are N commits waiting to be pushed. ALIASES From 1309c146d329a523822e04f6525d806d4f43b427 Mon Sep 17 00:00:00 2001 From: Diogo Alexsander Cavilha Date: Thu, 6 Dec 2018 21:00:16 -0200 Subject: [PATCH 6/7] :hammer::hammer::hammer: Improve code style :hammer::hammer::hammer: --- alias_functions/ga.sh | 8 +++----- alias_functions/gaa.sh | 8 +++----- alias_functions/gck.sh | 8 +++----- alias_functions/gckbt.sh | 10 ++++------ alias_functions/gd.sh | 14 +++++--------- alias_functions/gg.sh | 18 +++++++++--------- alias_functions/glp.sh | 8 +++----- alias_functions/gpl.sh | 5 +++++ alias_functions/gplo.sh | 11 ++++++++--- alias_functions/gplob.sh | 11 ++++++++--- alias_functions/gpsob.sh | 9 +++++++-- alias_functions/grb.sh | 10 +++++----- alias_functions/grba.sh | 16 +++++++++------- alias_functions/gsta.sh | 10 ++++------ alias_functions/gstd.sh | 10 ++++------ alias_functions/gstw.sh | 10 ++++------ alias_functions/gurl.sh | 9 ++++++--- alias_functions/guser.sh | 5 +++++ commands.sh | 28 +++++++++++++--------------- config => config.sh | 7 +++++++ help.sh | 5 +++++ install.sh | 8 +++----- prompt.sh | 4 ++-- prompt_styles/dark-double-line.sh | 7 ++++++- prompt_styles/dark.sh | 7 ++++++- prompt_styles/default.sh | 7 ++++++- prompt_styles/fancy-double-line.sh | 7 ++++++- prompt_styles/human.sh | 9 +++++++-- prompt_styles/light-double-line.sh | 7 ++++++- prompt_styles/light.sh | 7 ++++++- prompt_styles/simple-double-line.sh | 9 +++++++-- prompt_styles/simple.sh | 9 +++++++-- random_messages.sh | 5 ++++- uninstall.sh | 9 +++------ update_checker.sh | 8 +++----- version.sh | 2 +- 36 files changed, 193 insertions(+), 132 deletions(-) rename config => config.sh (97%) diff --git a/alias_functions/ga.sh b/alias_functions/ga.sh index d42b4c2..c20e14d 100644 --- a/alias_functions/ga.sh +++ b/alias_functions/ga.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 03.13.2017 +# Author: Diogo Alexsander Cavilha +# Date: 03.13.2017 # -# ADDING FILES -# -# Adds files in order to commit and shows git status +# git add git add $* && \ clear && \ diff --git a/alias_functions/gaa.sh b/alias_functions/gaa.sh index b1adeac..7821b2a 100644 --- a/alias_functions/gaa.sh +++ b/alias_functions/gaa.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 03.13.2017 +# Author: Diogo Alexsander Cavilha +# Date: 03.13.2017 # -# ADDING ALL FILES -# -# Adds all files in order to commit and shows git status +# git add --all git add --all && \ clear && \ diff --git a/alias_functions/gck.sh b/alias_functions/gck.sh index 475282a..d6e98e1 100644 --- a/alias_functions/gck.sh +++ b/alias_functions/gck.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 03.16.2017 +# Author: Diogo Alexsander Cavilha +# Date: 03.16.2017 # -# CHECKOUT FILES -# -# Checkout files and shows git status +# git checkout -- git checkout -- $* && \ clear && \ diff --git a/alias_functions/gckbt.sh b/alias_functions/gckbt.sh index 584508b..c8d085c 100644 --- a/alias_functions/gckbt.sh +++ b/alias_functions/gckbt.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 07.05.2016 +# Author: Diogo Alexsander Cavilha +# Date: 07.05.2016 # -# BRANCH CHACKOUT -# -# It forces the checkout of a branch +# git checkout --track origin/ -branch_name=$1 +branch_name="$1" git checkout --track origin/$branch_name diff --git a/alias_functions/gd.sh b/alias_functions/gd.sh index 03f9c02..67a619f 100644 --- a/alias_functions/gd.sh +++ b/alias_functions/gd.sh @@ -1,16 +1,13 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 11.28.2017 +# Author: Diogo Alexsander Cavilha +# Date: 11.28.2017 # -# GIT DIFF -# -# Show changes of a file and suggests to add it +# git diff clear -if [ "$1" = "" ] -then +if [ "$1" = "" ]; then git diff return fi @@ -20,8 +17,7 @@ git diff "$1" echo "" read -p " Add this file to commit? [y/N]: " r -if [ "$r" = "y" ] -then +if [ "$r" = "y" ]; then git add "$1" fi diff --git a/alias_functions/gg.sh b/alias_functions/gg.sh index 281f393..a18b555 100644 --- a/alias_functions/gg.sh +++ b/alias_functions/gg.sh @@ -1,15 +1,15 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 04.21.2018 +# Author: Diogo Alexsander Cavilha +# Date: 04.21.2018 # -# ADD, COMMIT, PUSH -# -# A shortcut for a common sequence in order to push changes +# git add --all +# git commit -m +# git push origin -branch=$(git branch | grep -oP '(?<=\* ).*') -msg=$1 +branch_name=$(git branch | grep -oP '(?<=\* ).*') +msg="$1" git add --all && \ -git commit -m "$1" && \ -git push origin $branch +git commit -m "$msg" && \ +git push origin $branch_name diff --git a/alias_functions/glp.sh b/alias_functions/glp.sh index 14f44a6..7ae4101 100644 --- a/alias_functions/glp.sh +++ b/alias_functions/glp.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 09.01.2016 +# Author: Diogo Alexsander Cavilha +# Date: 09.01.2016 # -# GIT LOG -# -# Perform a pretty git log +# It performs a pretty git log. logCmd="git log --date=short --pretty=format:'%C(bold yellow)%h%C(reset) %C(white)%ad %C(bold blue)(%ar)%C(reset) %C(bold green)%an %C(reset)%C(cyan)%s%C(reset)'" diff --git a/alias_functions/gpl.sh b/alias_functions/gpl.sh index 5b248bf..9a8d174 100644 --- a/alias_functions/gpl.sh +++ b/alias_functions/gpl.sh @@ -1,4 +1,9 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 04.01.2016 +# +# git pull . ~/.fancy-git/random_messages.sh diff --git a/alias_functions/gplo.sh b/alias_functions/gplo.sh index e457c36..332b53b 100644 --- a/alias_functions/gplo.sh +++ b/alias_functions/gplo.sh @@ -1,12 +1,17 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 04.01.2016 +# +# git pull origin . ~/.fancy-git/random_messages.sh run() { - local branch - branch="$1" + local branch_name + branch_name="$1" - git pull origin $branch + git pull origin $branch_name _fancygit_after_pulling_random_message } diff --git a/alias_functions/gplob.sh b/alias_functions/gplob.sh index 3f9ea25..e5450f4 100644 --- a/alias_functions/gplob.sh +++ b/alias_functions/gplob.sh @@ -1,12 +1,17 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 04.01.2016 +# +# git pull origin . ~/.fancy-git/random_messages.sh run() { - local branch - branch=$(git branch | grep -oP '(?<=\* ).*') + local branch_name + branch_name=$(git branch | grep -oP '(?<=\* ).*') - git pull origin $branch + git pull origin $branch_name _fancygit_after_pulling_random_message } diff --git a/alias_functions/gpsob.sh b/alias_functions/gpsob.sh index 11b9eff..33485a3 100644 --- a/alias_functions/gpsob.sh +++ b/alias_functions/gpsob.sh @@ -1,5 +1,10 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 04.01.2016 +# +# git push origin -branch=$(git branch | grep -oP '(?<=\* ).*') +branch_name=$(git branch | grep -oP '(?<=\* ).*') -git push origin $branch +git push origin $branch_name diff --git a/alias_functions/grb.sh b/alias_functions/grb.sh index 5385ae5..d6284e9 100644 --- a/alias_functions/grb.sh +++ b/alias_functions/grb.sh @@ -1,12 +1,12 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 05.24.2016 +# Author: Diogo Alexsander Cavilha +# Date: 05.24.2016 # -# BRANCH RENAMING +# It renames a branch locally. # -# Rename branch locally +# git branch -m -new_branch_name=$1 +new_branch_name="$1" git branch -m $new_branch_name diff --git a/alias_functions/grba.sh b/alias_functions/grba.sh index f75c0d4..eae83ad 100644 --- a/alias_functions/grba.sh +++ b/alias_functions/grba.sh @@ -1,15 +1,17 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 05.24.2016 +# Author: Diogo Alexsander Cavilha +# Date: 05.24.2016 # -# BRANCH RENAMING +# Rename branch locally. +# Delete the old branch. +# Push the new branch, set local branch to track the new remote branch. # -# Rename branch locally -# Delete the old branch -# Push the new branch, set local branch to track the new remote +# git branch -m +# git push origin : +# git push origin -new_branch_name=$1 +new_branch_name="$1" old_branch_name=$(git branch | grep -oP '(?<=\* ).*') git branch -m $new_branch_name diff --git a/alias_functions/gsta.sh b/alias_functions/gsta.sh index 9b70c87..5a30223 100644 --- a/alias_functions/gsta.sh +++ b/alias_functions/gsta.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 04.19.2018 +# Author: Diogo Alexsander Cavilha +# Date: 04.19.2018 # -# APPLY STASH -# -# It applies a stash +# git stash apply stash@{} -stash_id=$1 +stash_id="$1" git stash apply stash@{$stash_id} diff --git a/alias_functions/gstd.sh b/alias_functions/gstd.sh index c66769b..5813f56 100644 --- a/alias_functions/gstd.sh +++ b/alias_functions/gstd.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 04.19.2018 +# Author: Diogo Alexsander Cavilha +# Date: 04.19.2018 # -# DROP STASH -# -# It drops a stash +# git stash drop stash@{} -stash_id=$1 +stash_id="$1" git stash drop stash@{$stash_id} diff --git a/alias_functions/gstw.sh b/alias_functions/gstw.sh index 2e9ca2c..a603a72 100644 --- a/alias_functions/gstw.sh +++ b/alias_functions/gstw.sh @@ -1,11 +1,9 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 04.19.2018 +# Author: Diogo Alexsander Cavilha +# Date: 04.19.2018 # -# SHOW STASH CHANGES -# -# It shows a stash changes +# git stash show stash@{} -stash_id=$1 +stash_id="$1" git stash show stash@{$stash_id} diff --git a/alias_functions/gurl.sh b/alias_functions/gurl.sh index e1daa07..5d56e2b 100644 --- a/alias_functions/gurl.sh +++ b/alias_functions/gurl.sh @@ -1,7 +1,10 @@ #!/bin/bash - -gurl=$(git config --list | grep -oE 'https://.*|git@.*') +# +# Author: Diogo Alexsander Cavilha +# Date: 03.04.2016 +# +# git remote -v echo "" -echo " $gurl" +git remote -v echo "" diff --git a/alias_functions/guser.sh b/alias_functions/guser.sh index 63f0640..f89932d 100644 --- a/alias_functions/guser.sh +++ b/alias_functions/guser.sh @@ -1,4 +1,9 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 03.18.2016 +# +# It shows the user name and email. guser=$(git config --list | grep -oP '(?<=user.name=).*') gemail=$(git config --list | grep -oP '(?<=user.email=).*') diff --git a/commands.sh b/commands.sh index d86bf09..b00abc6 100755 --- a/commands.sh +++ b/commands.sh @@ -1,4 +1,9 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 03.02.2016 +# +# Commands manager. . ~/.fancy-git/version.sh @@ -19,8 +24,7 @@ fg_update() { current_date=$(date +%Y-%m-%d) - if [ ! -f ~/.fancy-git/last_update_at ] - then + if [ ! -f ~/.fancy-git/last_update_at ]; then touch -f ~/.fancy-git/last_update_at fi @@ -69,25 +73,21 @@ fg_update_checker() { current_date=$(date +%Y-%m-%d) last_update_at=$(cat ~/.fancy-git/last_update_at) - if [ ! -f ~/.fancy-git/last_update_at ] - then + if [ ! -f ~/.fancy-git/last_update_at ]; then touch -f ~/.fancy-git/last_update_at fi - if [ "$manual_update" = "yes" ] - then + if [ "$manual_update" = "yes" ]; then fg_update return fi - if [ "$current_date" = "$last_update_at" ] - then + if [ "$current_date" = "$last_update_at" ]; then return fi branch_name=$(git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/') - if [ "$branch_name" = "" ] - then + if [ "$branch_name" = "" ]; then return fi @@ -97,15 +97,13 @@ fg_update_checker() { updates=$(cd ~/.fancy-git && git diff origin/master) option="n" - if [ "$updates" != "" ] - then + if [ "$updates" != "" ]; then echo "" echo " Hey! A new Fancy Git update has been released!" read -p " Would you like to update it? [Y/n]: " option fi - if [ "$option" = "y" ] - then + if [ "$option" = "y" ]; then echo "" fg_update fi @@ -114,7 +112,7 @@ fg_update_checker() { cd "$current_dir" || return } -case $1 in +case "$1" in "-h"|"--help") fg_script_help;; "-v"|"--version") fg_show_version;; "update") fg_update_checker;; diff --git a/config b/config.sh similarity index 97% rename from config rename to config.sh index b4f5498..a930548 100644 --- a/config +++ b/config.sh @@ -1,3 +1,10 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 06.06.2018 +# +# Configuration file. + # ASCII local separator local branch_icon diff --git a/help.sh b/help.sh index 6366d03..b2138ce 100644 --- a/help.sh +++ b/help.sh @@ -1,4 +1,9 @@ #!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 11.18.2017 +# +# It prints the help text. . ~/.fancy-git/version.sh diff --git a/install.sh b/install.sh index d5db488..ed853fc 100755 --- a/install.sh +++ b/install.sh @@ -1,7 +1,7 @@ #!/bin/bash # # Author: Diogo Alexsander Cavilha -# Date: 11.16.2017 +# Date: 11.16.2017 # # Fancygit installation script. @@ -9,8 +9,7 @@ fg_os=$(uname) git clone https://github.com/diogocavilha/fancy-git.git ~/.fancy-git -if [ "$fg_os" = "Linux" ] -then +if [ "$fg_os" = "Linux" ]; then cp -f ~/.bashrc ~/.bashrc.backup echo "" >> ~/.bashrc echo ". ~/.fancy-git/prompt.sh" >> ~/.bashrc @@ -23,8 +22,7 @@ then echo "$current_date" > ~/.fancy-git/last_update_at fi -if [ "$fg_os" = "Darwin" ] -then +if [ "$fg_os" = "Darwin" ]; then cp -f ~/.bash_profile ~/.bash_profile.backup echo "" >> ~/.bash_profile echo ". ~/.fancy-git/prompt.sh" >> ~/.bash_profile diff --git a/prompt.sh b/prompt.sh index 504d32c..a9fa174 100644 --- a/prompt.sh +++ b/prompt.sh @@ -1,7 +1,7 @@ #!/bin/bash # -# Author: Diogo Alexsander Cavilha -# Date: 06.11.2018 +# Author: Diogo Alexsander Cavilha +# Date: 06.11.2018 # # Changes de prompt by loading the style configured in ~/.fancygit/mode file. diff --git a/prompt_styles/dark-double-line.sh b/prompt_styles/dark-double-line.sh index ff61ca7..339034b 100644 --- a/prompt_styles/dark-double-line.sh +++ b/prompt_styles/dark-double-line.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 12.02.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker # Prompt style diff --git a/prompt_styles/dark.sh b/prompt_styles/dark.sh index b4646ec..16d2e99 100644 --- a/prompt_styles/dark.sh +++ b/prompt_styles/dark.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 12.01.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker # Prompt style diff --git a/prompt_styles/default.sh b/prompt_styles/default.sh index b98e69b..ef851e2 100644 --- a/prompt_styles/default.sh +++ b/prompt_styles/default.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 06.08.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker # Prompt style diff --git a/prompt_styles/fancy-double-line.sh b/prompt_styles/fancy-double-line.sh index d146b63..039c731 100644 --- a/prompt_styles/fancy-double-line.sh +++ b/prompt_styles/fancy-double-line.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 06.06.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker # Prompt style diff --git a/prompt_styles/human.sh b/prompt_styles/human.sh index 66407c8..becb50e 100644 --- a/prompt_styles/human.sh +++ b/prompt_styles/human.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 06.11.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fg_branch_status() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh local branch_icon local branch_status @@ -40,7 +45,7 @@ fg_branch_name() { } fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker local user diff --git a/prompt_styles/light-double-line.sh b/prompt_styles/light-double-line.sh index d31b656..8742705 100644 --- a/prompt_styles/light-double-line.sh +++ b/prompt_styles/light-double-line.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 12.04.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker # Prompt style diff --git a/prompt_styles/light.sh b/prompt_styles/light.sh index 78ae19c..9a0502f 100644 --- a/prompt_styles/light.sh +++ b/prompt_styles/light.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 12.04.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker # Prompt style diff --git a/prompt_styles/simple-double-line.sh b/prompt_styles/simple-double-line.sh index e6c2225..10b1087 100644 --- a/prompt_styles/simple-double-line.sh +++ b/prompt_styles/simple-double-line.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 06.12.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fg_branch_status() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh local info info="" @@ -66,7 +71,7 @@ fg_branch_name() { } fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker local user diff --git a/prompt_styles/simple.sh b/prompt_styles/simple.sh index 8b97028..e9aafeb 100644 --- a/prompt_styles/simple.sh +++ b/prompt_styles/simple.sh @@ -1,9 +1,14 @@ +#!/bin/bash +# +# Author: Diogo Alexsander Cavilha +# Date: 06.06.2018 + . ~/.fancy-git/aliases . ~/.fancy-git/fancygit-completion . ~/.fancy-git/commands.sh fg_branch_status() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh local info info="" @@ -66,7 +71,7 @@ fg_branch_name() { } fancygit_prompt_builder() { - . ~/.fancy-git/config + . ~/.fancy-git/config.sh . ~/.fancy-git/update_checker.sh && _fancygit_update_checker local user diff --git a/random_messages.sh b/random_messages.sh index 0299526..780df7e 100644 --- a/random_messages.sh +++ b/random_messages.sh @@ -1,9 +1,12 @@ #!/bin/bash # # Author: Diogo Alexsander Cavilha -# Date: 11.27.2018 +# Date: 11.27.2018 +# +# It prints a random funny message after pulling. _fancygit_after_pulling_random_message() { + local list_size local messages local option diff --git a/uninstall.sh b/uninstall.sh index 86fbfff..86ed18f 100755 --- a/uninstall.sh +++ b/uninstall.sh @@ -1,21 +1,18 @@ #!/bin/bash # # Author: Diogo Alexsander Cavilha -# Date: 11.16.2017 +# Date: 11.16.2017 # # Fancygit uninstaller. fg_os=$(uname) -if [ "$fg_os" = "Linux" ] -then +if [ "$fg_os" = "Linux" ]; then sed -i '/. ~\/.fancy-git\/prompt\-changer.sh/d' ~/.bashrc fi -if [ "$fg_os" = "Darwin" ] -then +if [ "$fg_os" = "Darwin" ]; then sed -i '' '/. ~\/.fancy-git\/prompt\-changer.sh/d' ~/.bashrc fi rm -rf ~/.fancy-git - diff --git a/update_checker.sh b/update_checker.sh index bd1b1d7..07cf331 100644 --- a/update_checker.sh +++ b/update_checker.sh @@ -1,7 +1,7 @@ #!/bin/bash # # Author: Diogo Alexsander Cavilha -# Date: 12.05.2018 +# Date: 12.05.2018 _fancygit_update_checker() { local current_date @@ -9,15 +9,13 @@ _fancygit_update_checker() { current_date=$(date +%Y-%m-%d) - if [ ! -f ~/.fancy-git/last_update_at ] - then + if [ ! -f ~/.fancy-git/last_update_at ]; then touch -f ~/.fancy-git/last_update_at fi last_update_at=$(cat ~/.fancy-git/last_update_at) - if [ "$current_date" != "$last_update_at" ] - then + if [ "$current_date" != "$last_update_at" ]; then fg_update_checker "no" fi } diff --git a/version.sh b/version.sh index ab955d0..d4f990f 100644 --- a/version.sh +++ b/version.sh @@ -1,6 +1,6 @@ #!/bin/bash # # Author: Diogo Alexsander Cavilha -# Date: 11.17.2017 +# Date: 11.17.2017 FANCYGIT_VERSION="5.2.3" From 0115bee7769eae721229a09061b55e5e4ade725c Mon Sep 17 00:00:00 2001 From: Diogo Alexsander Cavilha Date: Thu, 6 Dec 2018 21:06:46 -0200 Subject: [PATCH 7/7] :pencil: Update CHANGELOG --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 17d542b..b42fc1f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ### v5.2.3 - Improve base path definitions +- Improve code style ### v5.2.2