We use cookies and other tracking technologies to improve your browsing experience on our site, analyze site traffic, and understand where our audience is coming from. To find out more, please read our privacy policy.

By choosing 'I Accept', you consent to our use of cookies and other tracking technologies.

We use cookies and other tracking technologies to improve your browsing experience on our site, analyze site traffic, and understand where our audience is coming from. To find out more, please read our privacy policy.

By choosing 'I Accept', you consent to our use of cookies and other tracking technologies. Less

We use cookies and other tracking technologies... More

Login or register
to apply for this job!

Login or register
to save this job!

Login or register to start contributing with an article!

Login or register
to see more jobs from this company!

Login or register
to boost this post!

Show some love to the author of this blog by giving their post some rocket fuel 🚀.

Login or register to search for your ideal job!

Login or register to start working on this issue!

Engineers who find a new job through Golang Works average a 15% increase in salary 🚀

Blog hero image

Create custom shorthands for your git 😎

Frederico Bezerra 27 October, 2020 | 3 min read

Let's start to the beginning.

In git we have a lot of powers and I will talk more about those in future posts but now I want to show you how to configure shorthands in git common scripts to improve your speed and give more control to you!

To create shorthands we will change our configuration file with –edit flag but one thing will happen , our loved and hated VIM will be called to edit it... to avoid it to happen (sorry experts and old school devs whose love VIM) we need to change the default editor in git configuration.

Changing it :

git config --global core.editor code

With this command we will use VsCode to edit our git configurations globally.

GO GO GO

To start and create our first shortcut :

git config --global --edit

Remember we are using the –global flag to change our configurations globally , use can use local if you want it.

After the command above something like it will be open in your vscode :


email= fredd@******

name= fredd********

[core]

editor= code

Talk is cheap let's do it :

first step add the tag alias in the end of file

[alias]

after this tag we now will put ours shortcuts

These bellow will be our commands to create shortcuts

GIT COMMIT - GIT ADD - GIT PUSH - GIT LOG - GIT STATUS

[alias]

c = !git add --all && git commit -m

the command above structure is :

c -> the alias itself

! -> Is the signal to start the command

git add –all -> Add all files independent of level of file (more powerful)

&& -> Concatenate a other command

git commit -m -> I think I don't need to explain that... huh ?

NICE :D with only a short command we add all files independent of the level and commit everything like that :

git c "shorthand git!!!"

WOW \o/ GO ON

the next is :


c = !git add --all && git commit -m

s = !git status -s

From now I will just explain little thing about the commands because the structure you already understood .(I think...)

Look simple, just a command to show the status , but with the flag -s we turn the message simple to read:

after :

git status

will show :

On branch master Untracked files:
  (use "git add <file>..." to include in what will be committed)

static/assets/draft.md

nothing added to commit but untracked files present (use "git add" to track)

Our command :

git s OR [git status -s]

Will show

?? static/assets/draft.md

Very easy to understand and see what you need...

Now , the beautiful git log (no no no...)

after our shortcut that is the output of the command :

commit 38a0c81fee06c009be2a714b6551be5e5a3ce5e7 Author: fredd**** fredd@*(mailto:fredd@**********)*** Date:   Thu Oct 22 16:38:36 2020 +0100

      dealing with it

commit 46b9d534a1484f0bb6ce71f72daf2304f25e1740 Merge: a11668f 8a93c07
Author: fredd*** [fredd@](mailto:fredd@**********)*** Date:   Thu Oct 22 16:18:09 2020 +0100

      changes in these

commit a11668f55720ab4c9526b587a0b5dae3c203c8ad Author: fredd*** [fredd@](mailto:fredd***********)***** Date:   Thu Oct 22 16:17:29 2020 +0100 

    fix something

little messy here... not easy to understand , lets do something :

[alias]
c = !git add --all && git commit -m
s = !git status -s
l = !git log --pretty=format:'%C(blue)%h%C(red)%d %C(white)%s - %C(cyan)%cn , %C(green)%cr'

–pretty=format: -> flag to create a format pattern

%h -> short hash of the commit

%d -> branch and tag of commit

%s -> subject of commit (message)

%cn -> git user of commit

%cr -> Relative date of commit

%C(blue) -> Colors , colors everywhere , change text colors with this!

Oh my God .. look at this bellow :

7a37d7e make it work - freddneos , 8 hours ago
6505576 change in these - freddneos , 8 hours ago
aa0e245 fix something - freddneos , 9 hours ago

Final format of our file (.gitconfig) :

[user]
	email = fredd@*****
	name = freddneos
[core]
	editor = code
[alias]
	c = !git add --all && git commit -m
	s = !git status -s
	l = !git log --pretty=format:'%C(blue)%h%C(red)%d %C(white)%s - %C(cyan)%cn , %C(green)%cr'

File Gist -> Gist

That is it Dudes , With simple lines of code you have all the power to be more productive in git routines, that is something that we need to do every time and a lot of times in our day.

Go on and create others shorthands

Thanks for read this!!! Good Luck and God bless You!!!

Originally published on frederico.eu

Author's avatar
Frederico Bezerra
I'm a passionate developer who loves new technologies and diferents aproaches to solve company and personal problems , make the daily things easier.
    Node.js
    JavaScript
    TYPESCRIPT
    AWS
    React
    React Hooks

Related Articles

Related Issues

viebel / klipse-clj
viebel / klipse-clj
  • Open
  • 0
  • 0
  • Intermediate
  • Clojure
viebel / klipse
  • Open
  • 0
  • 0
  • Intermediate
  • Clojure
viebel / klipse
  • 1
  • 0
  • Intermediate
  • Clojure
viebel / klipse
  • Started
  • 0
  • 1
  • Intermediate
  • Clojure
  • $80
viebel / klipse
  • Open
  • 0
  • 0
  • Advanced
  • Clojure
  • $80
viebel / klipse
  • Started
  • 0
  • 2
  • Advanced
  • Clojure
  • $180
viebel / klipse
  • Started
  • 0
  • 1
  • Intermediate
  • Clojure
viebel / klipse
  • 1
  • 1
  • Advanced
  • Clojure
  • $300
viebel / klipse
  • Open
  • 0
  • 0
  • Intermediate
  • Clojure

Get hired!

Sign up now and apply for roles at companies that interest you.

Engineers who find a new job through Golang Works average a 15% increase in salary.

Start with GitHubStart with Stack OverflowStart with Email