git에서 명령의 별칭을 지정하려면 어떻게 해야 합니까?
나는 누군가가 영화를 본 스크린캐스트를 보았습니다.
git st
git ci
▁when해위. 내가 할때합니다.이 작업을 수행할 때 다른 의도가 있었는지 묻는 오류가 발생합니다.
좀 초보라서, 이걸 하려면 어떻게 해야 하는지 알아야겠어요?
으로 기적으로다됩추니다면가하줄을에 .~/.gitconfig
[alias]
st = status
ci = commit -v
또는 git config alias 명령을 사용할 수 있습니다.
$ git config --global alias.st status
unix에서 별칭에 공백이 있는 경우 작은 따옴표를 사용합니다.
$ git config --global alias.ci 'commit -v'
창에서 별칭에 공백 또는 명령줄 인수가 있는 경우 큰따옴표를 사용합니다.
c:\dev> git config --global alias.ci "commit -v"
alias 명령은 함수를 매개 변수로 사용할 수도 있습니다.별칭을 살펴봅니다.
다른 사람들이 말했듯이 깃 별칭을 추가하는 적절한 방법은 글로벌에 있습니다..gitconfig
편집여파저장로를 합니다.~/.gitconfig
또는를여하사를 하여.git config --global alias.<alias> <git-command>
는 나의 아래나별섹복사다니입의 입니다.~/.gitconfig
파일 이름:
[alias]
st = status
ci = commit
co = checkout
br = branch
unstage = reset HEAD --
last = log -1 HEAD
bash를 에는 bash를 하는 것을 합니다.git-completion.bash
홈 디렉토리로 이동하여 해당 디렉토리에서 소스로 이동합니다.~/.bashrc
(저는 이것에 대해 ProGit 온라인 책에서 배웠다고 생각합니다.)Mac OS X에서는 다음 명령을 사용하여 이 작업을 수행했습니다.
# Copy git-completion.bash to home directory
cp usr/local/git/contrib/completion/git-completion.bash ~/
# Add the following lines to ~/.bashrc
if [ -x /usr/local/git/bin/git ]; then
source ~/.git-completion.bash
fi
참고: bash 완료는 표준 git 명령뿐만 아니라 git 별칭에도 적용됩니다.
키, 저는 저의 으로막정줄, 말입을위이추다다니습가에 과 같이 했습니다.~/.bash_aliases
에서 출처가 나온 ~/.bashrc
:
alias gst='git status'
alias gl='git pull'
alias gp='git push'
alias gd='git diff | mate'
alias gau='git add --update'
alias gc='git commit -v'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gco='git checkout'
alias gcob='git checkout -b'
alias gcot='git checkout -t'
alias gcotb='git checkout --track -b'
alias glog='git log'
alias glogp='git log --pretty=format:"%h %s" --graph'
제 생각에 가장 유용한 gitconfig는 다음과 같습니다. 우리는 항상 20%의 기능성 git을 사용합니다. 당신은 "gll"을 사용할 수 있습니다. 놀랍습니다. 세부 사항:
[user]
name = my name
email = me@example.com
[core]
editor = vi
[alias]
aa = add --all
bv = branch -vv
ba = branch -ra
bd = branch -d
ca = commit --amend
cb = checkout -b
cm = commit -a --amend -C HEAD
ci = commit -a -v
co = checkout
di = diff
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
ld = log --pretty=format:"%C(yellow)%h\\ %C(green)%ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short --graph
ls = log --pretty=format:"%C(green)%h\\ %C(yellow)[%ad]%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=relative
mm = merge --no-ff
st = status --short --branch
tg = tag -a
pu = push --tags
un = reset --hard HEAD
uh = reset --hard HEAD^
[color]
diff = auto
status = auto
branch = auto
[branch]
autosetuprebase = always
당신은 그것이 필요합니다.git config alias
저장소에서 합니다.Git 저장소에서 다음을 실행합니다.
git config alias.ci commit
전역 별칭의 경우:
git config --global alias.ci commit
'!' 연산자를 사용하여 셸을 생성하는 경우에도 명령을 체인으로 연결할 수 있습니다.
aa = !git add -A && git status
에 " " "라는 메시지가 됩니다.$ git aa
.
별칭을 쉽게 확인하려면 다음 별칭을 추가하십시오.
alias = config --get-regexp ^alias\\.
그럼!$ git alias
현재 별칭과 별칭의 기능을 제공합니다.
이것은 저에게 효과가 있었습니다.
bco = "!f(){ git branch ${1} && git checkout ${1}; };f"
날짜:
$ git --version
git version 1.7.7.5 (Apple Git-26)
는 별명을 .dog
로그 그래프를 표시하는 경우:
git config --global alias.dog "log --all --decorate --oneline --graph"
다음과 같이 사용합니다.
git dog
다음은 시간을 절약하기 위해 사용할 수 있는 4가지 바로 가기 또는 별칭입니다.
명령줄을 열고 아래 4개의 명령을 입력한 후 바로 가기를 사용합니다.
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
이제 시험해 보세요!
$ git co # use git co instead of git checkout
$ git ci # use git ci instead of git commit
$ git st # use git st instead of git status
$ git br # use git br instead of git branch
저는 (단말기와 함께 Mac을 사용하고 있습니다) .bash_profile을 추가하고 변경 사항을 로드하기 위해 다른 탭을 열 때만 작동했습니다.
alias gst="git status"
alias gd="git diff"
alias gl="git log"
alias gco="git commit"
alias gck="git checkout"
alias gl="git pull"
alias gpom="git pull origin master"
alias gp="git push"
alias gb="git branch"
홈 디렉토리의 ~/.gitconfig에 다음 행을 추가합니다.
[alias]
# one-line log
l = log --pretty=format:"%C(yellow)%h\\ %ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short
ll = log --pretty=format:"%C(yellow)%h%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --numstat
ld = log --pretty=format:"%C(yellow)%h\\ %C(green)%ad%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=short --graph
ls = log --pretty=format:"%C(green)%h\\ %C(yellow)[%ad]%Cred%d\\ %Creset%s%Cblue\\ [%cn]" --decorate --date=relative
a = add
ap = add -p
c = commit --verbose
ca = commit -a --verbose
cm = commit -m
cam = commit -a -m
m = commit --amend --verbose
d = diff
ds = diff --stat
dc = diff --cached
s = status -s
co = checkout
cob = checkout -b
# list branches sorted by last modified
b = "!git for-each-ref --sort='-authordate' --format='%(authordate)%09%(objectname:short)%09%(refname)' refs/heads | sed -e 's-refs/heads/--'"
# list aliases
la = "!git config -l | grep alias | cut -c 7-"
이 작업이 완료되면 다음 작업을 수행할 수 있습니다.git a
에 git add
예를면들. 별칭 아래에 입니다.별칭 제목 아래의 다른 명령에도 동일하게 적용됩니다.
별칭이 됩니다.st
위해서status
:
git config --add alias.st status
Git 별칭으로 셸 명령을 실행하려는 사용자의 경우 다음과 같습니다.
$ git pof
터미널에서 현재 분기를 오리진 레포로 밀어넣습니다.
[alias]
pof = !git push origin -f $(git branch | grep \\* | cut -d ' ' -f2)
어디서
$(git branch | grep \\* | cut -d ' ' -f2)
command는 현재 분기를 반환합니다.
다음은 지점 이름을 수동으로 입력하는 바로 가기입니다.
git push origin -f <current-branch>
명령어와 명령어 모두에 할 수 .git " non-git " 은 " 은 " 입니다.이것은 버전 1.5에서 추가된 것으로 보입니다.의 git config --help
Mac 버전 2.5.4의 페이지에는 다음이 표시됩니다.
별칭 확장 앞에 느낌표가 있으면 셸 명령으로 처리됩니다.
에서 글에서벌은.gitconfig
가질 수 있는 파일:
[alias]
st = status
hi = !echo 'hello'
다음을 실행합니다.
$ git hi
hello
$ git st
On branch master
...
사용자 디렉토리(vim ~/.profile)의 .profile에 모든 alias 명령을 추가했습니다.
alias gs='git status'
alias gp='git pull'
alias gph='git push'
alias gd='git diff | mate'
alias gau='git add --update'
alias gc='git commit -m'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gco='git checkout'
alias gcob='git checkout -b'
alias gcot='git checkout -t'
alias gcotb='git checkout --track -b'
alias glog='git log'
alias glogp='git log --pretty=format:"%h %s" --graph'
alias gfo='git fetch origin'
그리고 zsh 쉘 뿐만 아니라 bash에도 source 명령어를 추가했습니다.
bash 셸에서(vim ~/.bashrc)
source ~/.profile
zsh 쉘 내(vim ~/.zshrc)
source ~/.profile
한 줄 설정
$ git config --global alias.co checkout && git config --global alias.br branch && git config --global alias.ci commit && git config --global alias.st status && git config --global alias.unstage 'reset HEAD --' && git config --global alias.last 'log -1 HEAD'
용도:
$ git st
$ git co
$ git br
$ git ci
$ git last
$ git unstage <file | dir>
모든 설정은 다음과 같습니다.
$ cat ~/.gitconfig
[user]
name = Sample User
email = sample@gmail.com
[core]
filemode = false
compression = 1
quotepath = off
ignorecase = false
[color]
ui = auto
[alias]
co = checkout
br = branch
ci = commit
st = status
last = log -1 HEAD
unstage = reset HEAD --
더 빨리 하길 바랍니다.
git 업데이트git: 'update'는 git 명령이 아닙니다.'git --help'를 참조하십시오. 이런 뜻이었습니까? update-ref git config --global alias.update 'syslog -v' git 업데이트출처://git.kernel.org/pub/scm/git/git[최신] html -> 출발지/도착지[최신] maint -> 원산지/유지[최신] man -> 원산지/man[최신] 마스터 -> 오리진/마스터[최신] 다음 -> 출발지/다음[최신] pu -> 원산지/pu[최신] to do -> 원점/to do이미 최신 상태입니다.
Git에서 별칭을 만들려면 다음 명령을 사용합니다.
git config --local alias.s status
git config --local alias.c commit
git s
On branch master
nothing to commit, working tree clean
git status
On branch master
nothing to commit, working tree clean
git의 구성을 사용하여 사용자 지정 git 별칭을 설정할 수 있습니다.구문은 다음과 같습니다.
git config --global alias.<aliasName> "<git command>"
예를 들어 병합 충돌이 있는 파일 목록을 표시하기 위해 별칭이 필요한 경우 다음을 실행합니다.
git config --global alias.conflicts "diff --name-only --diff-filter=U"
이제 위의 명령어는 "conflicts"만 사용하여 사용할 수 있습니다.
git conflicts
# same as running: git diff --name-only --diff-filter=U
다른 답변에 언급된 표준 git 구성 방법보다 더 짧은 별칭을 얻기 위해 npm 패키지를 만들었습니다.npm install -g mingit
대부분의 명령이 2개의 단어가 아닌 2개의 문자가 되도록 합니다.다음은 예입니다.
g a . // git add .
g b other-branch // git branch other-branch
g c "made some changes" // git commit -m "made some changes"
g co master // git checkout master
g d // git diff
g f // git fetch
g i // git init
g m hotfix // git merge hotfix
g pll // git pull
g psh // git push
g s // git status
다른 명령도 마찬가지로 짧습니다.이렇게 하면 bash 완료도 유지됩니다.이 패키지는 점 파일에 bash 기능을 추가하며 osx, Linux 및 윈도우즈에서 작동합니다.또한 다른 별칭과 달리, 이 별칭은git
->g
두 번째 매개 변수도 포함됩니다.
만약 당신이 다른 대안을 원한다면,~/.gitconfig
옵션과 조금 더 파고드는 것에 개방적인 또 다른 옵션은 글로벌 노드 패키지로 포장하여 전체 사용자 지정 git 명령을 작성하는 것입니다.
당신의 소포 안에.json, 당신은 루트 명령을 정의할 것입니다.gt
를 선택한 명령을 합니다.을 선택한 다음 특정 명령을 필터링하여 올바른 git 명령을 실행합니다.를 들면, 들면를예,git checkout my-branch
그럴 수도 있겠지요gt co mybranch
.
npm의 "christian-git" 패키지는 다음 방법을 사용합니다. https://github.com/alexmacarthur/christian-git
아래와 같은 가명으로
[alias]
cb = checkout branch
pullb = pull main branch
파포에 파일을 .gitconfig
사용할 것을 제안합니다..gitconfig
포함합니다.일단 별칭을 만들기 시작하면 많은 별칭이 표시될 수 있습니다.그것들은 여러분이 다른 사람들과 공유하고 싶은 것일 것입니다.전용 파일에 저장하면 쉽게 공유할 수 있습니다.팀은 깃 레포를 사용하여 공유 별칭을 보유할 수도 있습니다.물론 공유하지 않으려는 일부 별칭도 있으므로 개인 별칭 파일에 보관하십시오.
[include]
path=src/dotfiles/.gitaliases
[include]
path=src/team-utils/gitaliases
[include]
path=.gitaliases.private
여기에는 별칭이 지정됩니다.여기에도 훌륭한 답변들이 있지만, 이것은 윈도우와 리눅스가 다르기 때문에 추가했습니다.
alias s="git status"
여러분의 지침 손가락은 여러분이 평생 동안 겪은 모든 고통을 용서해 줄 것입니다.
Windows의 또 다른 가능성은 바로 가기가 있는 .bat 파일로 디렉토리를 채우는 것입니다.파일 이름이 사용할 바로 가기입니다.디렉토리를 PATH 환경 변수에 추가하기만 하면 cmd 창에 폐기에 대한 모든 바로 가기가 표시됩니다.
예(gc.bat):
git commit -m %1
그런 다음 콘솔에서 다음 명령을 실행할 수 있습니다.
gc "changed stuff"
제가 이것을 답변으로 추가하는 이유는 이것을 사용할 때 당신은 제한되지 않기 때문입니다.git ...
명령만 입력합니다.
언급URL : https://stackoverflow.com/questions/2553786/how-do-i-alias-commands-in-git
'programing' 카테고리의 다른 글
xcrun: 오류: 활성 개발자 경로("/Applications/Xcode.app/Contents/Developer")가 없습니다. (0) | 2023.05.20 |
---|---|
오류 "치명적:빠르게 전달할 수 없음, 중단" (0) | 2023.05.20 |
Xcode 7.2 일치하는 프로비저닝 프로파일을 찾을 수 없음 (0) | 2023.05.20 |
종료 코드 255에서 ibtool이 실패하는 이유는 무엇입니까? (0) | 2023.05.20 |
나머지 너비를 채우도록 div 확장 (0) | 2023.05.15 |