GIT Bash – 如何默认到其他目录而不是主目录

我正在开发一个Windows机器。 我唯一需要的命令是Git Bash。 问题是:当我打开它,我在主目录。 我必须将目录更改为我的工作区,如:

cd ../../../d/work_space_for_my_company/project/code_source 

我可以用.sh文件包装这个,所以我不用再手工input了吗? 这应该很简单,但我对Linux命令行知之甚less。 我真的很感激如果你可以走过我如何创build.sh文件。

只需将该行写入文件“cd.sh”,然后从shell提示符处执行以下操作:

 . ./cd.sh 

或者你可以在$HOME/.bashrc文件中创build一个别名或函数:

 foo() { cd /d/work_space_for_my_company/project/code_source ; } 

如果目录名称包含空格或其他shell元字符,则需要引号; 即使不需要,也不会伤害他们:

 foo() { cd "/d/Work Space/project/code_source" ; } 

(请注意,我省略了../../.. ;你不需要它。)

编辑:如果你添加一条线

 foo 

在你的.bashrc函数定义后,你的shell将会从那个目录开始。 或者你可以直接在你的.bashrc使用cd命令,如果你以后不需要使用这个函数的话。

foo这个名字就是一个例子,你应该选一个更有意义的名字。)

这里有更多的Windows解决scheme:右键单击用于启动git bash的Windows快捷方式,然后单击“属性”。 将“开始”的值更改为所需的工作区path。

将该行添加到主目录中的.bashrc文件(如果该文件不存在,则创build该文件):

 cd ~ touch .bashrc echo "cd ~/Desktop/repos/" >> .bashrc 

我使用ConEmu (在Windows上强烈推荐) ,在那里我有一个启动Git Bash的任务

在这里输入图像说明

注意底部的“Startup dir …”button。 它将一个-new_console:d:<path>到Git Bash的启动命令中。 把它指向任何你喜欢的地方

这可能会帮助你。

图片描述

  1. 右键点击git bash – >属性
  2. 在Shorcut选项卡 – >在字段开始 – >input您的用户定义的path
  3. 确保Target字段不包括 – --go-to-home ,否则它将继续在HOMEvariables中指定的目录中启动

而已。

我也只是将快捷方式图标的“开始”设置更改为: %HOMEDRIVE%/xampp/htdocs/

(请阅读下面的警告)

在Windows中使用真正简单的方法(使用git bash,可能还有其他的方法)是创build一个名为HOME的环境variables,指向您想要的主目录。

  1. 右键点击我的电脑,然后select属性
  2. select高级系统设置(位置因Windows版本而异)
  3. 在系统属性中,select高级选项卡
  4. 在高级选项卡上,select环境variables(底部button)
  5. 在“系统variables”下检查是否已经有一个名为HOME的variables。 如果是这样,请通过突出显示variables名称并单击编辑来编辑该variables。 使新的variables名称成为所需的path。
  6. 如果HOME尚不存在,则单击系统variables下的“新build”,并创build一个名为HOME的新variables,其值为期望的path。

环境变量

注:这可能会改变其他事情的方式。 例如,对我来说,它改变了我的.sshconfiguration文件的位置。 在我的情况下,我想我的家是U:\,因为这是我把项目工作和应用程序设置(即它真的是我的“家”目录)的主要地方。

编辑2017年6月23日:这个答案继续得到偶然upvotes,我想警告人们,虽然这可能“工作”,我同意@AnthonyRaymond,这是不推荐。 如果不关心其他事情是否中断,这更像是一个临时修复或修复。 改变你的家不会造成积极的损害(如删除你的硬盘),但它可能会导致以后阴险的烦恼。 当你开始有麻烦的问题时,你可能不会记得这个改变…所以你很可能在后面挠头!

这样做会假设你想在每次打开命令行时都发生这种情况:

 echo cd ../../../d/work_space_for_my_company/project/code_source >> ~/.bashrc 

现在,当你打开shell时,它将从家中移出三个目录并转换到code_source。

该代码只是将“cd ../../../d/work_space_for_my_company/project/code_source”行添加到名为“.bashrc”的文件中。 “>>”创build一个文件,如果它不存在,然后追加。 .bashrc文件对于在启动/login时运行命令很有用(即加载模块等)

右键单击Git Bash应用程序链接,转到“属性”,并将“开始位置”修改为您希望从其开始的位置。

对于Windows:按照这些步骤 –

  1. 转到Windows主页>右键单击“Git Bash”应用程序。
  2. 属性>快捷方式
  3. 更改这两个设置:(a)删除 – 从target cd-to-home (b)在“开始”中键入要用git启动的文件夹path。

这对我工作:)

如果你想打开GIT bash时有项目select列表

  • 将代docker中的ppath编码到你的git项目path中 ,把这段代码放到.bashrc文件中,并拷贝到你的$ HOME目录中(在Win Vista / 7中通常是c:\ Users \ $ YOU

。

 #!/bin/bash ppath="/d/-projects/-github" cd $ppath unset PROJECTS PROJECTS+=(".") i=0 echo echo -e "projects:\n-------------" for f in * do if [ -d "$f" ] then PROJECTS+=("$f") echo -e $((++i)) "- \e[1m$f\e[0m" fi done if [ ${#PROJECTS[@]} -gt 1 ] then echo -ne "\nchoose project: " read proj case "$proj" in [0-`expr ${#PROJECTS[@]} - 1`]) cd "${PROJECTS[proj]}" ;; *) echo " wrong choice" ;; esac else echo "there is no projects" fi unset PROJECTS 
  • 你可能想把这个文件设置为GIT bash中的可执行文件chmod + x .bashrc (但它可能是多余的,因为这个文件存储在ntfs文件系统中)

它必须是cd d:/work_space_for_....

没有:它不适合我

Windows用户的另一个解决scheme是将Git Bash.lnk文件复制到您需要启动的目录中,然后从该目录启动它。

如果input以下命令:echo cd d:/ some / path >>〜/ .bashrc

将行cd d:/ some / path追加到“.bashrc”。 “>>”创build一个文件,如果它不存在,然后追加。

当我把CD放到我的工作目录中时,我的Git Bash快捷键就抱怨了〜/ .bashrc

 WARNING: Found ~/.bashrc but no ~/.bash_profile, ~/.bash_login or ~/.profile. This looks like an incorrect setup. A ~/.bash_profile that loads ~/.bashrc will be created for you. 

所以git创build了这个.bash_profile:

 $ cat ~/.bash_profile # generated by Git for Windows test -f ~/.profile && . ~/.profile test -f ~/.bashrc && . ~/.bashrc 

哪个工作。

或者,您可以再次删除.bashrc并将cd命令放入.bash_profile:

 $ rm ~/.bashrc $ echo "cd Source/Repos" >~/.bash_profile $ cat ~/.bash_profile cd Source/Repos 

一旦完成,您可以closures窗口,并重新打开它使用您的桌面快捷方式,提示会告诉你,你的位置现在是你想要的地方 – 看起来像这样的情况:

 Administrator@raptor1 MINGW64 ~/Source/Repos $