Git Bash 인코딩 및 홈 디렉터리 변경

2017-01-17 00:00:00
cmd git customize

윈도우에서 Git을 설치해서 Git-bash를 이용한다면 굳이 MinGW를 사용할 필요가 없습니다.

Git-bash의 인코딩 및 홈 폴더 변경 바로가기 생성 등을 소개합니다.

Change Encoding UTF-8

레지스트리 편집기를 실행합니다.

시작 - 실행 - regedit

[HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\Autorun]의 값을 바꿉니다.

없으면 새로 만들기 - 문자열 값으로 Autorun을 생성합니다.

이는 cmd가 실행 될 때마다 자동으로 실행되는 값입니다.

Autorun의 값을 다음과 같이 수정합니다.

chcp 949

~~사진과 같이 인코딩이 UTF-8로 변경되어 한글을 볼 수 있습니다.~~

한글 NT 3.51은 설계 당시부터 명령 프롬프트에서 한글을 입력할 수 없게 되어 있습니다. 하지만 chcp 949cmd에 한국어 입력이 가능해 집니다.

chcp 65001로 유니코드로 전환할 수 있지만 콘솔의 인코딩이 바뀌면 인코딩 충돌로 인한 특정 pip 모듈의 설치가 안될 수 있습니다.

참고

Git Bash Shortcuts

작업 표시줄에 바로가기를 만들 경우 win-T 또는 win-번호로 실행할 수 있어 편리합니다. 원하지 않을 경우 건너뛰어도 좋습니다.

git-bash.exe를 작업표시줄에 고정하게 되면 다시 실행할 경우 그냥 cmd만 실행이 됩니다. 이는 사실 실행되는 프로세스는 cmd이며 git이 설치된 폴더 내부의 sh.exe를 추가로 실행하기 때문입니다.

작업 표시줄에 바로가기를 만든 후 속성으로 들어가셔서 대상 및 시작위치 를 다음과 같이 수정합니다.

대상(T): %windir%\system32\cmd.exe /C "Git이 설치된 디렉터리"\bin\sh.exe
시작 위치(S): "원하는 경로"

이러면 작업 표시줄의 명령 프롬프트만 Autorun이 실행되어 유니코드가 적용된 Git-bash가 실행됩니다.

Apply bashrc

원하는 경로로 실행되긴 했지만 홈 디렉터리는 아닙니다. ls가 색도 안나오고... vivim도 실행이 안되고...

명령 프롬프트가 실행 됨과 동시에 스크립트를 실행하려면 다음과 같이 .bashrc를 추가합니다.

cd /D %HOMEDRIVE%%HOMEPATH%
vim .bashrc

alias ls='ls --color=auto'  # ls
alias ll='ls -l'            # ll = ls -l
alias vi='vim -N $*'        # vi = vim
export HOME=/d

위와 같이 한 이유는 실제 홈 디렉터리는 %HOMEDRIVE%%HOMEPATH%(C:\Users\"USERNAME")이며 작업 표시줄의 바로가기 명령프롬프트를 실행할 때만 홈 디렉터리의 경로를 잠시 바꿔 주기 위해서 입니다.

이외에 추가로 경로를 지정하거나 스크립트를 작성하셔도 좋습니다.

저는 작업 표시줄에 명령 프롬프트만 있고 바로가기 디렉터리를 환경변수에 추가하여 start 명령을 통해 실행하는 편입니다.

참고