스크립트를 사용하여 특정 작업 디렉토리가있는 Git Bash 창을 어떻게 시작합니까?


86

스크립트 (Bash 또는 Windows 배치)를 사용하여 지정된 작업 디렉토리로 새 Git Bash 창을 시작하려면 어떻게해야합니까?

내 목표는 각각 다른 작업 디렉토리로 설정된 단일 스크립트에서 여러 Git Bash 창을 시작하는 것입니다. 이렇게하면 Git Bash 창을 열고 각 창을 올바른 작업 디렉터리로 이동하는 대신 컴퓨터를 부팅 한 후 빠르게 작업 할 수 있습니다.

이 질문 과 같이 기본 작업 디렉토리를 변경하는 방법을 묻는 것이 아니라 스크립트에서 다른 작업 디렉토리로 하나 이상의 터미널 창을 시작하십시오.


1
@StevenVascellaro 이것이 왜 속지 않는지 설명하기 위해 질문을 편집했습니다.
holocronweaver

말이 되네요. 중복 투표를 철회했습니다.
Stevoisiak

답변:


62

또 다른 옵션은 다음 속성을 사용하여 바로 가기를 만드는 것입니다.

여기에 이미지 설명 입력

대상 은 다음과 같아야합니다.

"% SYSTEMDRIVE % \ Program Files (x86) \ Git \ bin \ sh.exe"--login

시작 위치 는 Git Bash 프롬프트를 시작할 폴더입니다.


1
명성! 알고 있었던 절대로 Start in프로그램을 생각하는 작업 디렉토리 함께 할 수있는 뭔가가 없었다에 있습니다.
CausingUnderflowsEverywhere

이것이 가장 쉬운 방법입니다. 그 후 바로 가기를 작업 표시 줄에 고정한 다음 Windows + 1에 고정하고 작업 표시 줄의 첫 번째 항목으로 유지하고 git-bash로 직접 저장소를 엽니 다.
Hareen Laks

48

Git Bash는 일종의 래퍼 인에서 cmd.exe제공하는 MSYS / MinGW의 확장과 터미널에 사용 합니다 . Windows에서는 명령을 사용하여 새 터미널을 시작합니다 .sh.execmd.exestart

따라서 특정 작업 디렉토리로 새 Git Bash 터미널을 시작하는 쉘 스크립트는 다음과 같습니다.

(cd C:/path/to/dir1 && start sh --login) &
(cd D:/path/to/dir2 && start sh --login) &

동등한 Windows 배치 스크립트는 다음과 같습니다.

C:
cd \path\to\dir1
start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login 
D:
cd \path\to\dir2
start "" "%SYSTEMDRIVE%\Program Files (x86)\Git\bin\sh.exe" --login 

시작 메뉴에서 시작된 Git Bash와 동일한 글꼴 및 창 크기를 얻으려면 시작 메뉴 바로 가기 설정을 명령 콘솔 기본값에 복사하는 것이 가장 쉽습니다 (기본값을 변경하려면을 열고 cmd.exe왼쪽 상단 아이콘을 마우스 왼쪽 버튼으로 클릭 한 다음 기본값).


1
이것은 나를 위해 작동합니다 : cdGit Bash를 시작하려는 디렉토리로 이동 한 다음 start예제 에서 명령 을 실행하면 해당 디렉토리에 Git Bash 터미널이 제공됩니다. bash rc 파일에서 어딘가에 cd $HOME(또는 cdargs없이) 하고 있지 않습니까? (예 .bashrc: .profile,, ...) 또한 드라이브 문자를 염두에 두십시오. 당신이에 망할 놈의 강타를 시작하려면 X:다음하고, 드라이브 cd x:\path를 잘라하지 않습니다, 당신이해야 할 x:다음과 cd \pathstart
야노스

1
당신이 맞아요! 나는 당신이 단순히 할 수 없다는 사실을 놓치고 있었다 cd x:\path. 그에 따라 내 솔루션을 편집합니다.
holocronweaver 2013

완벽한 솔루션! 기본 cmd.exe설정은 Git Bash 설치시 기본 Git Bash 설정과 동일 하지 않습니다 . 기본 설정 ( Defaults컨텍스트 메뉴에서)과 현재 설정 ()의 차이점을 이해해야 합니다 Properties. 그래서 내가 한 일은 : (1) Git Bash를 열고, Properties(현재 설정)을 선택하고 , (2) 그것을 조정하고, 정확히 내가 원하는 것을 (글꼴, 창 크기 + 위치), (3) open cmd.exe, select Defaults, (4 ) Git Bash에서 cmd.exe. 그런 다음 OKcmd.exe'설정 Cancel에서 Git Bash의 설정 및 짜잔!'
trejder

48

--cd = 옵션을 사용해보십시오. GIT Bash가 C : \ Program Files \ Git에 있다고 가정하면 다음과 같습니다.

"C:\Program Files\Git\git-bash.exe" --cd="e:\SomeFolder"

레지스트리 키 내에서 사용하는 경우 폴더 매개 변수를 % 1과 함께 제공 할 수 있습니다.

"C:\Program Files\Git\git-bash.exe" --cd="%1"


%1레지스트리 매개 변수 는 어떻게 사용 합니까?
Erasmus Cedernaes

1
현재 답변은 너무 구식입니다.
Küzdi Máté

이것은 배치 파일에 대한 것 같습니다. (.bat)
Franta

26

@Drew Noakes의 답변을 추가하겠습니다.

표적:

"C:\Program Files\Git\git-bash.exe" --cd=C:\GitRepo

cdPARAM은 작업 디렉토리를 지정하는 방법 옵션 중 하나이어야한다.

또한 --login여기에는 매개 변수 가 없습니다 . 대신 SSH 키 전용 인 다른 추가 앱인 Pageant (PuTTY 인증 에이전트)를 사용 합니다.

에서 시작:

C:\GitRepo

@Drew Noakes가 더 빨리 언급 / 표시했듯이 가능한 동일한 방법으로 나도 사용합니다.

단축 키:

Ctrl + Alt + B

이러한 바로 가기는 Windows에서 잘 알려지지 않은 또 다른 기능입니다. 그러나 제한이 있습니다. 바로 가기를 적용하려면 사용자의 하위 디렉터리에 위치해야합니다. 바탕 화면은 괜찮습니다.

표시하지 않고 여전히 활성화 할 수있는 경우이 .lnk파일을 빠른 실행 폴더에 배치하십시오. 해당 디렉토리는 이러한 바로 가기를위한 것입니다. (바탕 화면 표시 여부에 관계없이) # 76080 # 3619355

"\Application Data\Microsoft\Internet Explorer\Quick Launch\"

12

또한 Win10은 폴더를 마우스 오른쪽 버튼으로 클릭하고 여기에서 GitBash를 선택하여 작업 디렉토리에서 git bash를 열 수있는 옵션을 제공합니다.

여기에 이미지 설명 입력


4

윈도우 10

이것은 기본적으로 @lengxuehx의 대답이지만 Win 10 용으로 업데이트되었으며 bash 설치가 git의 공식 다운로드 에서 Windows 용 Git Bash에서 가져온 것이라고 가정합니다 .

cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit

레지스트리 설정에서 실행하는 명령으로 Git Bash에 대한 컨텍스트 메뉴 항목을 잃어버린 후에 이것을 사용하게되었습니다. 궁금한 점이 있으면 이렇게했습니다.

  1. 다음 위치 Bashshell키에서 호출 된 새 키를 만듭니다.HKEY_CLASSES_ROOT\Directory\Background\shell
  2. Icongit-bash.exe 부분을 포함하여 git-bash.exe의 전체 경로 인 문자열 값을 (새 키가 아닙니다!)에 추가하십시오. 이것을 따옴표로 묶어야 할 수도 있습니다.
  3. Bash컨텍스트 메뉴에서 사용할 텍스트 의 기본값을 편집 합니다. 여기에 이미지 설명 입력
  4. Bash호출에 하위 키 추가command
  5. command의 기본값을 다음으로 수정cmd /c (start /b "%cd%" "C:\Program Files\GitW\git-bash.exe") && exit 여기에 이미지 설명 입력

그런 다음 레지스트리를 닫고 실제 디렉터리 인 어디에서나 Git Bash를 사용할 수 있어야합니다. 예를 들어, This PC실제 디렉토리가 아닙니다.

여기에 이미지 설명 입력


3
기록을 위해 레지스트리 내부의 기본 git bash 항목 HKEY_CLASSES_ROOT\Directory\Background\shell\git_shell\command"C:\Program Files\Git\git-bash.exe" "--cd=%v."
Ferrybig

좋은! 감사합니다, @Ferrybig! ^ _ ^
kayleeFrye_onDeck

4

이것은 Run dialog box(바로 가기는 win+ R) 에서 직접 실행할 수있는 명령이며 .bat스크립트 로도 잘 저장됩니다 .

cmd /c (start /d "/path/to/dir" bash --login) && exit

1
이 창에서 10 개의 새로운 cmd를 실행
KYB

1
@kyb는 그것을해야하는데 /b윈 10
kayleeFrye_onDeck

@kyb 나는 경우, lengxuehx의 대답의 변형 인 대답을했다 당신이나 다른 사람이 여전히 관심이있다 : stackoverflow.com/a/39779451/3543437
kayleeFrye_onDeck

3

나는 힘내 Bash는 익숙하지 않다 있지만 (예 : 자식 쉘이라고 가정 git-sh에 거주하는) /path/to/my/gitshell`myterm '스크립트를 다음 수 있으며, 좋아하는 터미널 프로그램이라고는 :

(cd dir1; myterm -e /path/to/my/gitshell) &
(cd dir2; myterm -e /path/to/my/gitshell) &
...

-e실행 을위한 매개 변수의 이름은 선호하는 터미널 프로그램에 따라 다르게 지정 될 수 있습니다.


감사합니다. 귀하의 답변으로 올바른 방향으로 생각하게되었습니다. 이것이 제가 Linux에서하는 방법입니다.하지만 지금까지 MS Windows에서 동등한 것을 파악할 수 없었습니다! Git Bash의 경우 mytermMSYS / MinGW를 통해 추가 된 cmd.exe입니다. 새 cmd를 시작하려면 Windows 관련 start명령 sh.exe과 Git Bash의 경로 , 원하는 명령 줄 옵션을 차례로 사용합니다. 내 대답은 세부 사항을 제공합니다.
holocronweaver 2013

-1

방향을 틀렸을 지 모르지만이 트릭이 마음에 듭니다.

Windows 탐색기를 사용하여 원하는 디렉터리를 가리키고 주소 표시 줄에 "cmd"를 입력하면 해당 디렉터리에서 Windows 명령 프롬프트가 열립니다.

경로에 "Git"디렉토리가있는 경우 동일한 방법으로 주소 표시 줄에 "git-bash"를 입력하면 해당 디렉토리에서 Git 셸이 열립니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.