小编ive*_*res的帖子

为什么分支名称在开头不能包含'hash'(#)char?

这个

git checkout -b #1-my-awesome-feature
Run Code Online (Sandbox Code Playgroud)

造成错误

error: switch `b' requires a value
Run Code Online (Sandbox Code Playgroud)

用反斜杠转义它或用引号括起来都行

git checkout -b \#1-my-awesome-feature
Run Code Online (Sandbox Code Playgroud)

但这很奇怪

git branch #1-my-awesome-feature
Run Code Online (Sandbox Code Playgroud)

不会产生任何错误,如果你检查它是否与创建

git branch --all
Run Code Online (Sandbox Code Playgroud)

没有分支.

如果散列字符不在分支名称的第一个位置,则将创建分支.

git branch feature-#1
Run Code Online (Sandbox Code Playgroud)

执行 git branch

feature-#1
* master
Run Code Online (Sandbox Code Playgroud)

所以我的问题是hash(#)char是如何在终端中"翻译"的,以及为什么它在第一时就无法工作?

谢谢!

git workflow naming-conventions git-checkout git-branch

7
推荐指数
1
解决办法
986
查看次数