\lstdefinelanguage{lGit}{
number suffixes={},
alsoletter={|~_><-},
moredelim=**[is][{\xlsthlwarning}]{|warn|}{|warn|},
moredelim=**[is][{\xlsthlerror}]{|err|}{|err|},
moredelim=**[il][{\xlsthlerror}]{|err|:},
moredelim=**[is][{\xlsthlinfo}]{|info|}{|info|},
moredelim=[is][\itshape\bfseries]{|ihl|}{|ihl|},
moredelim=[is][{}]{|plain|}{|plain|},
moredelim=**[il][{\color{xlst@colors@lst@comments}\bfseries}]{>imp>},
comment=[l]{\#},
morestring=[s]"",
escapeinside={!*}{*!},
morekeywords = {remote},
morekeywords = [2]{origin},
morekeywords = [3]{commit,push,add,init,status,rm,pull,clone,checkout,branch,merge,config,fetch,stash,diff,reset,tag},
morekeywords = [5]{git},
morekeywords = [6]{main,master,--global},
morestring=[s]''
}

\RegisterLanguage{git}{lGit}