How do I change the default location for Git Bash on Windows?
GitWindows 7Git BashGit Problem Overview
I am using Git on Windows 7 and access my repositories through Git Bash. How can I change the default location that Git Bash opens in a convenient folder when I start it?
It's somewhat time consuming to navigate to htdocs
, and then a specific folder. Is there a way to change the configuration file to have it open elsewhere? Or would it be possible to write a .sh
file to do this?
Unfortunately Git Bash won't open my htdocs
folder shortcut on my desktop, and it takes using cd
5 times to get to my desired directory.
Git Solutions
Solution 1 - Git
After installing msysgit I have the Git Bash here
option in the context menu in Windows Explorer. So I just simply navigate to the directory and then open Bash right there.
I also copied the default Git Bash
shortcut to the desktop and edited its Start in
property to point to my project directory. It works flawlessly.
Windows 7x64, msysgit.
Solution 2 - Git
The easiest way without installing msysgit is right click on the Git Bash shortcut icon → Start in: → "C:\Program Files (x86)".
Change the Start in entry and point out the Git Bash starting position. If you don't remove the --cd-to-home
part from the Target box, the Start in change gets overridden.
Solution 3 - Git
Add this line to your .bashrc
file:
cd C:/xampp/htdocs/<name of your project>;
If the .bashrc file doesn't exist, create one in your root folder. For me it is: C:\Users\tapas\
Save .bashrc and open Git Bash. That's it!
Solution 4 - Git
I read it somewhere and it worked for me.
First check in git bash what is the HOME location. Open git bash and run
echo $HOME
Now change the HOME path by opening cmd and run
setx HOME "path/to/.ssh/loc" (I gave C:\Users\aXXXX)
Now cross check by running the echo command in git bash.
Solution 5 - Git
Open the properties of the bash and change to "Start in" to where you want to start in. After this, (I had this problem and I solved it by doing this) go to target and delete the --cd-to-home parameter part after "C:\Program Files\Git\git-bash.exe" . Only THEN will you start in the "Start in" directory that you specified.
Solution 6 - Git
Windows 10 tested solution
-
Type git bash in search
-
Right click on it and choose open file location
-
Right click on it and choose properties
-
At target remove --cd-to-home from "C:\Program Files\Git\git-bash.exe" --cd-to-home
-
At start in put the path of the directory you want it to start at for example Start in: C:\xampp\htdocs
Solution 7 - Git
If you're like me, and the way you get to Git is windows key + G + I + Enter, then you can simply hit the windows key, search for Git, right click on the resulting Git Bash
icon, select properties, and change the Start in:
field.
I'm not exactly sure what this does, because I'm not exactly sure what Git on Windows is (a facade on top of sh which itself is a facade on cmd?), but in any case, you can now pin the shortcut that Windows pulls up on a search for "Git" to your taskbar, or to your desktop, and it will still start in whatever directory you set it to.
Solution 8 - Git
1/ Go to Properties of Git Bash
2/ Change Start in: to your the directory of your choi
3/ Delete --cd-to-home
4/ Restart Git Bash
Solution 9 - Git
Right click on Git Bash shortcut
and then go to properties
.
In properties
inside start in
option add the location of the directory you want to start Git Bash
in and apply
the changes.
Solution 10 - Git
I am using Git bash on Windows 10, here is my solution:
- Close all git bash sessions
- Hit windows key and type:
env
; then clickEdit environment variables for your account
(control panel) - Under "User variables for ...."; hit
New
button - Variable Name: HOME
- Variable value: path where you would like
~/
to be in git bash
Open a git bash session and test it by typing: pwd
and double check by doing cd ~/ && pwd
Solution 11 - Git
Git bash is used to play with bash commands. So I use bash method itself in windows Git bash
Edit your .bash_profile
(create it if you doesnot have one - see below how to create). Enter the following lines.
###Add these lines to the file alias ws="cd /d/workspace/" ws
###My .bash_profile looks like this
Smilyface@SmilingMachine /d/workspace
$ cat ~/.bash_profile
alias ws="cd /d/workspace/"
ws
###How to create a new .bash_profile ?
touch ~/.bash_profile
OR write into the file directly
vi ~/.bash_profile
Simple, aha !
Solution 12 - Git
Once you have updated the Start in:
field make sure to remove the --cd-to-home
at the end of the Target:
field
Solution 13 - Git
Make a Git Bash shortcut to Desktop for convenience then right click on the icon goto properties. Here you will find the Start in: section with a text box. Replace the path you want, for example like:
%USERPROFILE%\Desktop
Then open it directly by clicking on the icon. You will get the default Desktop path in Git Bash.
Solution 14 - Git
I liked Peter Mortenson's answer, but I would like to expand.
'cd ~' in the .bashrc file causes the "Git Bash Here" feature of Git Bash to stop working. Instead, add this if statement to the .bashrc file:
if [ "$PWD" == '/' ]
then
cd ~
fi
This will change to the home directory when Git Bash is run on its own, but when "Git Bash Here" is run, the current working directory will not be changed.
Solution 15 - Git
Open this file:
C:\Program Files\Git\etc\bash.bashrc
And append the following line:
cd /c/Users/<User>/Documents/path/to/your/repos
Restart Git bash
Solution 16 - Git
If you're using Git Bash through Windows Terminal, you can set the starting directory (of any profile).
In Windows Terminal, go to Settings
> Open JSON file
.
In this file, in profiles
> list
, you can set the startingDirectory
property (backslashes need to be escaped).
See the documentation.
Solution 17 - Git
the only way that worked for me on windows 10:
- right-click gitbash shortcut -> proporties
- change target as: "C:\Program Files\Git\git-bash.exe" --cd=C:\Users\test\Desktop\
This will always open desktop path
Solution 18 - Git
Add a line to change to the desired directory in your .bashrc file or create a .bashrc if you don't have one.
I.e. add cd C:/path/to/yourfolder
to your .bashrc file
Be mindful that the path format is forward slash '/' Unix style and not Windows '\' backslash.
One way to do this is to open bash and edit it using vim
- Open up Git Bash
- Run vim ~/.bashrc
- Press i in order to insert characters
- Type cd C:/path/to/folder; (make sure you use forward slashes)
- Press esc to exit the insert mode
- Press :wq or ZZ to save and exit vim
I found this solution on https://simplernerd.com/cli-git-bash-default/
Solution 19 - Git
Just type the path of your local directory (Git project home directory) in the properties of Git Bash. I.e. set path C:\yourprojsctdirectory to Git Bash's properties field "Execute In" or (Ausführen in). That's it!
Now double click Git Bash. The Git header will be on your "yourprojsctdirectory".
Solution 20 - Git
The working solution listed are great, but the problem occurs when you want multiple default home for your git-bash.
A simple workaround is to start git-bash using bat script.
git-bash-to-htdocs.bat
cd C:\xampp\htdocs
"C:\Program Files\Git\git-bash.exe"
The above of course assume git-bash is installed at C:\Program Files\Git\git-bash.exe
You can create multiple .bat
file so your git-bash can start where it want to be
Solution 21 - Git
If using Windows OS then add target like above :
- Right click on git terminal > Properties
- Properties>Under shortcut tab>Start in: add your folder target path like below image
Solution 22 - Git
Add "cd your_repos_path" to your Git profile, which is under the %
.
Solution 23 - Git
I tried the following; it helped me. I hope it help you also.
cd /c/xampp/your-project
Solution 24 - Git
Since I'm using git-bash inside of vscode as a terminal I don't always want to cd into a specific directory, for this to work I checked if my current directory(pwd
) is /
and if so it should only then cd to ~
. So whenever I open the terminal inside vscode git-bash's current working directory is my opened folder inside of vscode and it doesn't change to ~
since it only does that when my current working directory is /
.
For this to work I added following if condition into ~/.bashrc
:
if [ $(pwd) = '/' ] then cd ~; fi
TIP: make sure your ~/.bash_profile
actually loads ~/.bashrc
by a line like the following:
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi