[英]How to properly setup my git $PATH on my mac (I did, but need to understand how it really works)?
我在我的mac上从网站安装了GIT,但是git --version给了我旧的安装(我猜xcode安装)。 所以我解决了这个问题:
写:
export PATH = / usr / local / bin:$ PATH
重启终端
虽然,我认为我的配置中有一些东西可以更好地设置。
我目前的回音$ PATH
在/ usr / local / bin目录:在/ usr / bin中:/ bin中:/ usr / sbin目录:/ sbin目录:在/ usr / local / bin目录:在/ usr /本地/ git的/ bin中
所以它工作,但它很乱,因为我有2 / usr / local / bin和/ usr / local / git / bin
此外,我无法理解为什么它现在可以工作,因为/ usr / local / bin只包含bbedit命令:
我不太清楚所有的路径配置文件和它们被读取的真实顺序。 我只知道一些unix命令..我当前的文件〜/是:
〜/ .profile文件:
if [ -f ~/.bashrc ];
then
source ~/.bashrc
fi
〜/ .bashrc中:
. ~/bin/dotfiles/bashrc
然后在。 〜/斌/点文件/ .bashrc中
. ~/bin/dotfiles/bash/env
. ~/bin/dotfiles/bash/config
. ~/bin/dotfiles/bash/aliases
并在。 〜/斌/点文件/庆典/ ENV:
export PATH=/usr/local/bin:/opt/local/bin:/opt/local/sbin:$PATH
。 〜/ bin / dotfiles / bash / config只是空的
和。 〜/ bin / dotfiles / bash / aliases包含一些别名commad。
无论如何,它应该读取〜/ bin / dotfiles / bash / env,但事实并非如此。 或者只在/ etc / paths之后读取它
首先读取〜/ .bash_profile。
我当前的/ etc / paths内容:
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
谁能解释一下这些机制呢? :P或者也许我应该把这个问题发给一些Unix组?
当您在* NIX shell上键入任何命令时,shell会尝试使用$PATH
解析该命令。 说你的路径是/usr/bin:/usr/local/bin
,然后发生这种情况:
$ foo
- Does /usr/bin/foo exist? No.
- Does /usr/local/bin/foo exist? No.
- Does foo exist in the current working directory?
换句话说,它依次查看每个$PATH
元素并尝试查找您在那里请求的可执行文件。 这就是典型的configure
- make
- make install
过程以./configure
开头的原因,以明确表示您要在当前目录中运行configure
可执行文件,而不是某些系统范围的命令。
要弄清楚它最终选择了哪个foo
,请运行:
$ which foo
您可以通过提供其完整路径来显式运行任何命令:
$ /usr/local/bin/foo # overrides /usr/bin/foo, should it exist
初始化脚本中的export PATH=...:$PATH
指令只是在路径上添加某些路径,允许您覆盖解析顺序命令的优先级。 /usr/local/bin
在那里两次并不理想,但它也不是真正的问题。 你应该注意不要让你的路径长得太长,因为这可能会导致对每个命令进行大量的查找,并且可能会对你的头部产生影响。
有关bash配置文件的加载顺序的全面演练,请参阅此内容 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.