我正在Windows 7笔记本电脑上使用最新的Git bash。当我定义别名时,如下所示:
$ alias gitc='git commit -a'
会话期间一切正常,但如果我关闭并重新打开bash,就无法恢复它们。但是,命令历史记录得以保留。
我该怎么办?我错过了什么吗?
谢谢!
我正在Windows 7笔记本电脑上使用最新的Git bash。当我定义别名时,如下所示:
$ alias gitc='git commit -a'
会话期间一切正常,但如果我关闭并重新打开bash,就无法恢复它们。但是,命令历史记录得以保留。
我该怎么办?我错过了什么吗?
谢谢!
touch .bash_profile
。
接着输入vim .bash_profile
。
然后可以在此文件中添加别名。保存该文件并重新打开git bash,你的别名应该可以按照预期工作。vim
创建文件,但在 Windows Explorer 中手动创建文件肯定无法正常工作。但正如 ebneter 所说,它只是创建文件而已。 - ctorsource .bash_profile
或. .bash_profile
,如此处所述。您知道,在某些情况下,您可能正在进行大量的$^*%操作,或者像我一样发现重新打开一个窗口非常不方便。 - cod3monk3y你可以设置一个.gitconfig文件并添加别名,而无需修改你的bash_profile:
[alias]
st = status
ci = commit
br = branch
co = checkout
df = diff
lg = log -p
touch ~/.bashrc
vim ~/.bashrc
在文件~/.bashrc
中添加别名:
alias gitc='git commit -a'
# -- ... and your other aliases here ...
保存文件(在vim中按<ESC>:wq
)。重新加载文件,以便bash知道所做的更改:
source ~/.bashrc
这些步骤在我使用的Win 7/Win 8中与Git bash (MINGW32)兼容。
对于Windows用户:
确保你在主目录中,
最简单的方法是创建一个.bash_profile
文件,并将你的别名插入其中
注意:如果使用记事本编辑它,请先执行以下命令:
git config core.editor notepad
然后创建文件并按以下方式添加你的别名:
notepad .bash_profile
现在你可以将你的别名添加到.bash_profile
中,如下所示:
alias yourAlias='your Command Here'
alias AnotherAlias='your Command Here'
按ctrl +s键或文件>保存
菜单保存文件
aliases.sh
文件:C:\installation\folder\etc\profile.d\
现在您可以像这样添加别名到现有别名中:# Some good standards, which are not used if the user
# creates his/her own .bashrc/.bash_profile
# --show-control-chars: help showing Korean or accented characters
alias ls='ls -F --color=auto --show-control-chars'
alias ll='ls -l'
alias sail='[ -f sail ] && bash sail || bash vendor/bin/sail'
你需要将它们放在你的 .bash_profile 文件中。这样,每次启动新的登录 shell 时,它们就会被重置。
我知道你已经得到了答案,但是你可能想考虑使用git自己的别名系统,这在git配置帮助页面中有解释。然后它们可以是每个仓库特定的,也可以是全局或每个用户特定的。
我对PowerShell非常陌生。我从公司借来的笔记本电脑还不到一周,这就是我在Windows上的全部经验。但是,我可能已经找到了一个对我有效的解决方案。
(受https://superuser.com/questions/1090141/does-powershell-have-any-sort-of-bashrc-equivalent启发)
在PowerShell中:
New-Item $profile -Type File -Force
它将在文档文件夹下的WindowsPowerShell文件夹中创建一个名为Microsoft.PowerShell_profile.ps1的文件。然后你可以用文本编辑器打开它:
notepad $profile
在文件中添加$bash = [bash | . ~/.bash_profile]
。
现在,当从powershell进入bash时,你的bash_profile应该会自动被调用。例如,我可以输入env
,我的bash_profile中指定的所有本地变量都会显示出来。我想这也适用于.bashrc,但我还没有尝试过。
仅供参考,这只是Marvin Mustafa答案的扩展。但我不确定他的方法是否能解决我的问题,即每次在Windows中启动新命令提示符时都必须重新加载bash_profile资源。
希望这对你有用。
****编辑****
这个解决方案对我有效,但我从Windows那里收到了一些投诉。我认为更好的解决方案,虽然也可能存在问题,是编辑/etc/bash.bashrc
并添加source ~/.bash_profile
。这样做后,我的PS1、配置文件变量等都显示在env
中。祝好运。