Skip to content

Git aliasy przydatne w pracy codziennej i z webmethods

Jeśli robisz to samo wiele razy, to zautomatyzuj/napisz skrypt do tego! – To samo dotyczy pracy z gitem! Poniżej kilka git aliasów, które przydają i przydawały mi się w pracy z gitem i webmethods.

Konfiguracja

Konfiguracja: Wchodzicie w {miejsce, gdzie macie zainstalowanego gita}/git/mingw64/etc/
edytujecie .gitconfig i dodajecie git aliasy w ten sposób:

[alias]
    newb = "!f() { ticketnum=$1; git checkout -f sandbox; git pull; git checkout -b \"iss_${ticketnum}\"; }; f" 
...


    //Przykład schematu aliasu
    TwójAlias = "!f() { logika komendy; kolejny krok po średniku; }; f"

Plik z wszystkimi aliasami znajdziesz tutaj:

Git aliasy przydatne w codziennej pracy

git newb

Przykład użycia: git newb 1123123

Działanie: git przechodzi na główny branch projektowy (standardowo master) pulluje najnowsze zmiany, odbija nowego brancha z przedrostkiem iss_ (tutaj należy zmienić w zależności od tagu waszego projektu) i przechodzi na nowo utworzony branch.

newb = "!f() { ticketnum=$1; git checkout -f master; git pull; git checkout -b \"iss_${ticketnum}\"; }; f"


git bclean

Działanie: na bazie wyniku z komendy git branch –merged, usuwa wszystkie już zmergowane gałęzie lokalne.

bclean = "!f() { git branch --merged ${1-master} | grep -v " ${1-master}$" | xargs -r git branch -d; }; f"


git ffm

Działanie: merguje najnowsze zmiany z brancha głównego (w moim przypadku to sandbox) do aktualnego brancha (stosować tylko wtedy gdy zmiany, które chcemy zmergować do głównego brancha są już zacomitowane).

ffm = "!f() { currentBranch=$(git rev-parse --abbrev-ref HEAD); git checkout -f master; git pull; git checkout ${currentBranch}; git merge master; }; f"

Alternatywą dla tej komendy jest alias robiąca rebase na branchu, na którym teraz pracujesz, a głównym branchem – przydatne gdy główny branch ma włączoną opcję Fast-Forward:

git ffr (wymaga force push) – używaj tylko jeśli pracujesz sam na branchu

ffr = "!f() { git pull --rebase origin master; }; f"


git pushnew

Działanie: pushuje comitty do nowo utworzonego brancha, na którym aktualnie się znajdujesz i jeszcze nie zrobiłeś żadnego pusha.

pushnew = "!f() { currentBranch=$(git rev-parse --abbrev-ref HEAD); git push origin ${currentBranch}; }; f"

Git aliasy przydatne w pracy z webmethods

git addflow

Przykład użycia: git addflow addDocument putDocument …

Działanie: staguje flowy do commita – wyszukuje ścieżkę do folderu i dodaje folder do commita.

addflow = "!f() { for var in "$@"; do flow=$(find -name $var); git add \"$flow\"; done; }; f"


git addjs

Przykład użycia: git addjs getProperty loadErrorCodes…

Działanie: wyszukuje skompilowany kod Java servicu, java.frag i node.ndf tego servicu i staguje to do commita.

addjs = "!f() { for var in "$@"; do js=$(find -name $var); jsDirname=$(dirname ${js}); jsCodeFile=$(basename ${jsDirname}); jsCodeFilePath=$(find -name ${jsCodeFile}.java); git add \"$jsCodeFilePath\"; git add \"$js\"; done; }; f"


git addman

Działanie: staguje do commita plik manifestu danego pakietu ISowego (przydatne w przypadku konfiguracji startup service, lub zależności pakietowych)

addman = "!f() { manifest=$(find -name manifest.v3 -print -quit); git add ${manifest}; }; f"

A Ty, z jakich aliasów korzystasz? Tworzysz własne aliasy, czy tylko GUI? Daj znać w komentarzu!

Published inGit