每当我右键单击文件夹并单击Git Bash时,我的.bash_profile就无法正常工作。当我用桌面图标打开Git Bash时,它工作得很好。这是我的.bash_profile:
source ~/git-completion.bash
green="\[\033[0;32m\]"
blue="\[\033[0;34m\]"
purple="\[\033[0;35m\]"
reset="\[\033[0m\]"
source ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1="$green\u$green\$(__git_ps1)$blue \w $ $reset"
我尝试过搜索,但到目前为止,我没有看到一些答案或至少提示来回答我的问题。
顺便说一下,我从Udacity的一个名为“使用Git和Github”的课程中获得了这段代码。他们在那里有一个讨论论坛,但我只参加了免费课程,所以我无法访问它
提前致谢!
答案 0 :(得分:2)
Bash来源public static void main(String[] args) {
List<String> list = new ArrayList<String>();
List<String> uniquelist = new ArrayList<String>();
try {
Scanner unique = new Scanner(new FileReader(Path));
while (unique.hasNextLine()) {
String userUnique = unique.nextLine();
uniquelist.add(userUnique);
}
Iterator<String> it = uniquelist.iterator();
while (it.hasNext()) {
String user = it.next();
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int e = 0;
int f = 0;
int g = 0;
Iterator<String> it2 = list.iterator();
while (it2.hasNext()) {
String[] y = it2.next().toString().split(" ");
if (user.equalsIgnoreCase(y[0])) {
int a1 = Integer.parseInt(y[1]);
int b1 = Integer.parseInt(y[2]);
int c1 = Integer.parseInt(y[3]);
int d1 = Integer.parseInt(y[4]);
int e1 = Integer.parseInt(y[5]);
int f1 = Integer.parseInt(y[6]);
int g1 = Integer.parseInt(y[7]);
if (a1 == 1) {
a = a1;
}
if (b1 == 1) {
b = b1;
}
if (c1 == 1) {
c = c1;
}
if (d1 == 1) {
d = d1;
}
if (e1 == 1) {
e = e1;
}
if (f1 == 1) {
f = f1;
}
}
}
System.out.println(user + " " + a + " " + b + " " + c + " " + d
+ " " + e + " " + f + " " + g + "\n");
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
如果它作为登录shell打开。当您通过右键单击文件夹打开git bash时,它不会作为登录shell打开,因此bash不会来源.bash_profile
。放置设置的正确文件是.bash_profile
,它由交互式非登录shell中的bash提供。
只需将.bashrc
重命名为.bash_profile
。
答案 1 :(得分:1)
为避免bash脚本中出现多余内容,可以使用以下命令创建.bashrc:
if [ -f ~/.bash_profile ]; then
. ~/.bash_profile
fi