Làm cách nào để thay đổi vị trí mặc định cho Git Bash trên Windows?


218

Tôi đang sử dụng Git trên Windows 7 và truy cập kho lưu trữ của mình thông qua Git Bash. Làm cách nào tôi có thể thay đổi vị trí mặc định mà Git Bash mở trong một thư mục thuận tiện khi tôi khởi động nó?

Nó hơi tốn thời gian để điều hướng đến htdocs, và sau đó là một thư mục cụ thể. Có cách nào để thay đổi tập tin cấu hình để mở nó ở nơi khác không? Hoặc có thể viết một .shtập tin để làm điều này?

Thật không may, Git Bash sẽ không mở htdocslối tắt thư mục của tôi trên máy tính để bàn của tôi và phải mất cd5 lần để đến thư mục mong muốn của tôi.


Câu trả lời:


212

Sau khi cài đặt msysgit, tôi có Git Bash heretùy chọn trong menu ngữ cảnh trong Windows Explorer. Vì vậy, tôi chỉ cần điều hướng đến thư mục và sau đó mở Bash ngay tại đó.

Tôi cũng sao chép Git Bashlối tắt mặc định vào màn hình nền và chỉnh sửa thuộc tính của nó Start inđể trỏ đến thư mục dự án của tôi. Nó hoạt động hoàn hảo.

Windows 7x64, msysgit.


14
Tôi nghĩ Start inphần này là thứ anh ấy quan tâm nhất - nếu bạn đang sử dụng windows shell ( cmd.exe), bạn cũng có thể bật QuickEdit modequa hộp thoại thuộc tính tương tự để sao chép / dán dễ dàng hơn một chút và đặt thuộc tính kích thước cửa sổ / bộ đệm / phông chữ và như vậy ...
johnny

2
Tôi không có Git Bash Heretùy chọn này . Làm thế nào để tôi làm điều đó sau đó?
ptamzz

56
Để có được để Git Bash's Start intài sản, Right-Click vào biểu tượng Git Bask bạn shortcut và nhấn "Properties". Sau đó tìm và dán vào Start intrường con đường bạn muốn bắt đầu. Nó sẽ trông giống như:C:\Users\DM\Desktop\YourFolder
Mikeumus

34
Quyền cd-to-homeđã được ghi đè start ingiá trị của tôi . Tất cả được sắp xếp ngay bây giờ.
JayPex

3
Đối với Start ingiá trị, tôi sử dụng %USERPROFILE%/Gitở đâu Gitlà một thư mục dưới ví dụ như thư mục chính của tôiC:\users\rami\Git
Rami Alloush

197

Cách dễ nhất mà không cần cài đặt msysgit là nhấp chuột phải vào biểu tượng phím tắt Git Bash → Bắt đầu: → "C: \ Program Files (x86)".

Thay đổi mục nhập Bắt đầu và chỉ ra vị trí bắt đầu Git Bash. Nếu bạn không xóa --cd-to-homephần đó khỏi hộp Target, thay đổi Bắt đầu sẽ bị ghi đè.


4
Tôi thấy giải pháp của bạn và Marcin là như nhau, nhưng đối với tôi, hướng dẫn của bạn chính xác hơn và chính xác hơn. Cảm ơn!
Eric Hepperle - CodeSlayer2010

39
Cảm ơn các mẹo để loại bỏ các --cd-to-homeđối số.
chrisjleu

3
@ShirishHerwade Tôi phải bỏ ghim khỏi thanh tác vụ và ghim lại để làm cho nó hoạt động.
henrikmerlander

1
Vẫn là giải pháp hữu ích nhất vào năm 2020
John Targaryen

"Thay đổi mục Bắt đầu trong mục nhập và chỉ ra vị trí bắt đầu Git Bash." Điều đó nghĩa là gì? Ai đó có thể cung cấp một giá trị ví dụ để sử dụng?
Bob Horn

129

Thêm dòng này vào .bashrctập tin của bạn :

cd C:/xampp/htdocs/<name of your project>;

Nếu tệp .bashrc không tồn tại, hãy tạo một tệp trong thư mục gốc của bạn. Đối với tôi nó là:C:\Users\tapas\

Lưu .bashrc và mở Git Bash. Đó là nó!


15
Đây là câu trả lời chính xác! Và nếu .bashrckhông có ở đó, chỉ cần tạo nó trong ~(cd ~ && touch .bashrc)
Jad Joubran

3
Tôi tìm thấy bash.bashrctrong Git\etcthư mục
Gondil

10
Tôi thấy giải pháp này tốt nhưng nó không chơi tốt với các phím tắt tùy chỉnh hoặc các Git Bash heretùy chọn được mô tả bởi các câu trả lời khác. Tôi đã giải quyết nó bằng cách thêm một điều kiện để nó chỉ chạy khi trong thư mục nhà. if [[ $(pwd) = $HOME ]]; then cd <location> fi
Ném

1
Cảm ơn @Fors! Đó là một ý tưởng tốt điên rồ. Đừng quên dấu chấm phẩy sau vị trí!
Travis Watson

2
Lưu ý: Bạn có thể cần sử dụng vi trong chính Git Bash để tạo tệp, Windows cảm thấy khó chịu khi tôi cố đổi tên tệp không có "tên", chỉ là "phần mở rộng"
romeara

20

Mở thuộc tính của bash và thay đổi thành "Bắt đầu" đến nơi bạn muốn bắt đầu. Sau đó, (tôi gặp vấn đề này và tôi đã giải quyết nó bằng cách này) đi đến mục tiêu và xóa --cd-to-home phần tham số sau "C: \ Program Files \ Git \ git-bash.exe". Chỉ THEN bạn mới bắt đầu trong thư mục "Bắt đầu" mà bạn đã chỉ định.


4
Vladimir, xóa phần tham số --cd-to-home sau "C: \ Program Files \ Git \ git-bash.exe" là một chi tiết quan trọng. Cảm ơn.
vlmercado

18

Tôi đọc nó ở đâu đó và nó làm việc cho tôi.

Đầu tiên hãy kiểm tra git bash vị trí HOME là gì. Mở git bash và chạy

echo $HOME

Bây giờ thay đổi đường dẫn HOME bằng cách mở cmd và chạy

setx HOME "path/to/.ssh/loc" (I gave C:\Users\aXXXX)

Bây giờ kiểm tra chéo bằng cách chạy lệnh echo trong git bash.


1
Tôi nghĩ rằng đây là một câu trả lời rất hay, đặc biệt nếu công ty của bạn có một thư mục nhà được ánh xạ mạng mà bạn không muốn sử dụng (ví dụ: vì lý do hiệu suất)
Merijn Vogel

thay đổi đường dẫn HOME này sẽ chỉ ảnh hưởng đến git bash hoặc dấu nhắc lệnh tổng hệ thống?
siluveru kiran kumar

Giải pháp tuyệt vời, đã khắc phục sự chậm chạp nghiêm trọng mà tôi có với Git Bash với ổ đĩa P: của tôi trên một ổ đĩa từ xa chậm qua VPN. Tuy nhiên, tôi thấy lạ, làm thế nào tôi có thể sử dụng giải pháp này HOMEnhưng không phải HOMEDRIVEHOMEPATH- Tôi không thể thay đổi nơi cmdkhởi chạy với giải pháp này. Nhưng không sao, Git Bash là thứ đã bị ảnh hưởng và giờ nó đã hoạt động bình thường trở lại.
Joanis

Lưu ý rằng giải pháp này cũng thay đổi khi Git Bash tìm kiếm các dotfiles của bạn, giải quyết vấn đề của tôi, nhưng có thể không phải là giải pháp phù hợp cho các tình huống khác và có lẽ đó không phải là điều OP muốn.
Joanis

13

Nếu bạn giống tôi và cách bạn đến Git là windows key+G + I+ Enter, thì bạn chỉ cần nhấn windows key, tìm kiếm Git, nhấp chuột phải vào Git Bashbiểu tượng kết quả , chọn thuộc tính và thay đổi Start in:trường.

Tôi không chắc chắn chính xác những gì nó làm, bởi vì tôi không chắc chắn chính xác Git trên Windows là gì (một mặt tiền trên đỉnh của nó là mặt tiền trên cmd?), Nhưng trong mọi trường hợp, bây giờ bạn có thể ghim phím tắt Windows sẽ tìm kiếm "Git" trên thanh tác vụ của bạn hoặc trên máy tính để bàn của bạn và nó sẽ vẫn bắt đầu trong bất kỳ thư mục nào bạn đặt.


2
Vì vậy, đó là lý do tại sao nó không hoạt động. Tôi quên cập nhật phím tắt được ghim trong thanh tác vụ của mình. "Bây giờ pin (...)" của bạn đã rung chuông :)
Jelmer

8

Giải pháp thử nghiệm Windows 10

  • Nhập git bash trong tìm kiếm

  • Nhấp chuột phải vào nó và chọn vị trí tập tin mở

  • Nhấp chuột phải vào nó và chọn thuộc tính

  • Tại mục tiêu xóa --cd-to-home khỏi "C: \ Program Files \ Git \ git-bash.exe" --cd-to-home

  • Khi bắt đầu, hãy đặt đường dẫn của thư mục mà bạn muốn nó bắt đầu tại ví dụ Bắt đầu bằng: C: \ xampp \ htdocs


Tôi đã làm điều này nhưng vẫn giống như trước đây, nó sẽ hoạt động nếu bắt đầu trong đĩa cục bộ D: \ bất kỳ thông tin nào.
siluveru kiran kumar

7

Tôi đang sử dụng Git bash trên Windows 10, đây là giải pháp của tôi:

  1. Đóng tất cả các phiên git bash
  2. Nhấn phím windows và gõ : env; sau đó nhấp vàoEdit environment variables for your account (bảng điều khiển)
  3. Trong "Biến người dùng cho ...."; nhấn Newnút
  4. Tên biến: TRANG CHỦ
  5. Giá trị biến: đường dẫn mà bạn muốn ~/ở trong git bash

Mở một phiên git bash và kiểm tra nó bằng cách gõ: pwdvà kiểm tra lại bằng cách thực hiệncd ~/ && pwd


Một số phiên bản của Git sử dụng HOMEPATH thay vì HOME. Nếu bạn kiểm tra bắt đầu trong thư mục cho Git Bash, bạn có thể thấy biến môi trường nào được sử dụng.
Matt Bonness

6

Khi bạn đã cập nhật Start in:trường, hãy đảm bảo xóa --cd-to-homephần cuối của Target:trường


6

Nhấp chuột phải vào Git Bash shortcutvà sau đó đi đến properties.
Trong tùy chọn propertiesbên trong start inthêm vị trí của thư mục bạn muốn bắt đầu Git Bashapplynhững thay đổi.


6

Git bash được sử dụng để chơi với các lệnh bash. Vì vậy, tôi sử dụng phương thức bash trong windowsGit bash

Chỉnh sửa của bạn .bash_profile(tạo nó nếu bạn không có - xem bên dưới cách tạo). Nhập các dòng sau.

Thêm các dòng này vào tập tin

alias ws="cd /d/workspace/"
ws

.Bash_profile của tôi trông như thế này

Smilyface@SmilingMachine /d/workspace
$ cat ~/.bash_profile
alias ws="cd /d/workspace/"
ws

Làm cách nào để tạo .bash_profile mới?

touch ~/.bash_profile

HOẶC ghi trực tiếp vào tệp

vi ~/.bash_profile 

Đơn giản, aha!


3
chính xác và rõ ràng, tất nhiên tập tin ~ / .bashrc cũng sẽ ổn thôi.
Minnie

5

Tạo một lối tắt Git Bash tới Desktop để thuận tiện sau đó nhấp chuột phải vào thuộc tính biểu tượng goto. Ở đây bạn sẽ tìm thấy phần Bắt đầu trong: với một hộp văn bản. Thay thế đường dẫn bạn muốn, ví dụ như:

%USERPROFILE%\Desktop

Sau đó mở nó trực tiếp bằng cách nhấp vào biểu tượng. Bạn sẽ nhận được đường dẫn Desktop mặc định trong Git Bash.


3
Ah! Tôi cũng cần phải loại bỏ --cd-to-hometùy chọn.
Andrey Mikhaylov - lolmaus

3

Tôi thích câu trả lời của Peter Mortenson, nhưng tôi muốn mở rộng.

'cd ~' trong tệp .bashrc khiến tính năng "Git Bash Here" của Git Bash ngừng hoạt động. Thay vào đó, hãy thêm câu lệnh if này vào tệp .bashrc:

if [ "$PWD" == '/' ]
then
        cd ~
fi

Điều này sẽ thay đổi thành thư mục chính khi Git Bash tự chạy, nhưng khi "Git Bash Here" được chạy, thư mục làm việc hiện tại sẽ không được thay đổi.


2

Chỉ cần nhập đường dẫn của thư mục cục bộ của bạn (thư mục nhà của dự án Git) trong các thuộc tính của Git Bash. Tức là đặt đường dẫn C: \ yourprojsctdirectory đến trường thuộc tính của Git Bash "Thực thi trong" hoặc (Ausführen in). Đó là nó!

Bây giờ bấm đúp vào Git Bash. Tiêu đề Git sẽ nằm trên "yourprojsctdirectory" của bạn.


2

Giải pháp làm việc được liệt kê là tuyệt vời, nhưng vấn đề xảy ra khi bạn muốn có nhiều ngôi nhà mặc định cho git-bash của bạn.

Một cách giải quyết đơn giản là bắt đầu git-bash bằng cách sử dụng tập lệnh bat .

git-bash-to-htdocs.bat

cd C:\xampp\htdocs
"C:\Program Files\Git\git-bash.exe" 

Tất nhiên, ở trên giả sử git-bash được cài đặt tại C:\Program Files\Git\git-bash.exe

Bạn có thể tạo nhiều .battệp để git-bash của bạn có thể bắt đầu ở nơi nó muốn



1

Tôi đã thử như sau; Nó đã giúp đỡ tôi. Tôi hy vọng nó cũng giúp bạn.

cd /c/xampp/your-project

@MuhammadSohailiqbal - Câu hỏi là làm thế nào để đặt nó theo mặc định. Vì vậy, bất cứ khi nào anh ta mở Git Bash, nó sẽ trực tiếp đến thư mục đó.
smilyface
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.