.gitconfig

Cam așa arată .gitconfig-ul meu pe Windows. Deschizi o consolă de cygwin și scrii cd ~/, urmat de un nano .gitconfig și bagi tot ce este mai jos (schimbi numele dacă vrei).

Ce rezultă?

Păi, în principiu, scurtături. Multe. În loc de git commit -a vei scrie doar git ci, de exemplu. Enjoy!

[user]
name = Your Name
email = your@email
[core]
whitespace = fix,-indent-with-non-tab,trailing-space,cr-at-eol
filemode = false
autocrlf = true
safecrlf = false
preloadindex = true
fscache = true
[alias]
ad = add .
a = add .
co = checkout
ci = commit -a
st = status
br = branch
df = diff
lg = log -p
lol = log --graph --pretty=format:'%Cred%h%Creset%C(yellow)%d%Creset %s %C(black bold)- %an %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
ls = ls-files
f = fetch --all
u = pull
um = pull origin master
p = push --progress
po = push origin --progress
pm = push origin master --progress
mg = merge --no-ff
sub = submodule update --init --recursive
hash = rev-parse --short HEAD
longhash = rev-parse --long HEAD
curbranch = !git branch | grep \"*\" | sed \"s/* //\"
zip = !HASH=$(git hash) && BRANCH=$(git curbranch) && git archive --format zip --output $BRANCH-$HASH.zip master
ignore = !([ ! -e .gitignore ] && touch .gitignore) | echo $1 >>.gitignore
la = !git config -l | grep alias | cut -c 7-
pu = !git push origin $(git curbranch) --progress
pp = !git pull origin $(git curbranch)
up = !git remote update -p; git merge --ff-only @{u}
release = !git co master && git mg develop && git co develop
gra = "!f() { A=$(pwd) && TOPLEVEL=$(git rev-parse --show-toplevel) && cd $TOPLEVEL && git grep --full-name -In $1 | xargs -I{} echo $TOPLEVEL/{} && cd $A; }; f"
[color]
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = yellow
changed = green
untracked = cyan
[color "diff"]
whitespace = red reverse
[pager]
color = true
[status]
color = auto
[diff]
color = auto
rename = copy
[gui]
encoding = utf-8
[mergetool]
keepBackup = true
[push]
default = simple
[branch]
autosetuprebase = always
[i18n]
filesEncoding = utf-8
[pull]
default = current
ff = only
[gitflow "branch"]
develop = dev
[gc]
auto = 256
view raw gistfile1.bat hosted with ❤ by GitHub

Înainte de a folosi pur și simplu această configurare, încearcă să înțelegi cum funcționează aceste scurtături și ce înseamnă ele.

2 Comentarii to “.gitconfig”

  1. Mi-a plcăut configurarea pentru whitespace-uri, cred că o bag și la mine.

    Alias-urile totuși îs cam lungi, în special când folosești git-ul la orice mișcare. Eu mi-am făcut alias-uri direct pentru bash.

    alias ga='git add'
    alias gc='git commit -am'
    alias gl='git pull origin master'
    alias gp='git push origin master'
    [...]
    

    În general dacă mai lucrez mult pe diferite branch-uri e bine să ai aliasurile ca funcții cu parametri opționali.
    $ ga .
    $ gc “yay”
    $ gp

    That’s it.

  2. Pentru bash și zsh există și scule puțin mai avansate [1]

    [1] http://madebynathan.com/2011/10/18/git-shortcuts-like-youve-never-seen-before/

Show trackbacks

Ți-a plăcut articolul? Lasă un comentariu!

You can insert code snippets using BBcode:
[js].[/js] [html].[/html] [php].[/php] [css].[/css]
You can also use some HTML tags:
<blockquote>.</blockquote> <code>.</code> <a href="">.</a> <strong>.</strong> <em>.</em>

windows apple dropbox facebook twitter