致命:模糊参数'<branch_name>':版本和文件名</branch_name>

时间:2014-10-13 21:31:13

标签: git version-control

这是我做的:

  • 我跑了git checkout -b branch_name
  • 我在branch_name上做了一些提交。
  • 我检查了master分支并进行了快速合并。

当我运行git log branch_name --oneline时,收到以下消息:

fatal: ambiguous argument 'branch_name': both revision and filename
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

可能是什么问题?

3 个答案:

答案 0 :(得分:32)

它告诉你,你有一个名为'branch_name'的分支,还有一个名为'branch_name'的文件或目录。

如果您希望命令将'branch_name'视为分支,请使用

git log --oneline branch_name --

如果您希望将'branch_name'视为文件使用

git log --oneline -- branch_name

答案 1 :(得分:0)

如果遇到任何人在尝试以下情况时遇到上述错误,则此处是修复

问题: -

#In master branch
git checkout -b feature-a

#changed to feature-a branch
vi a.txt
git commit -m "adding a file" a.txt
git push
git diff master

fatal: ambiguous argument 'master': both revision and filename
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

解决方案: -

git diff origin/master

答案 2 :(得分:0)

通常情况下,我会使用类似的东西处理差异:

git diff -r 2e706c4dd3 -r 838112ed50 > codereview.txt

...制作一个很好的codereview.txt文件。好吧,我不小心跑了这个:

git diff -r 2e706c4dd3 -r 838112ed50 > 838112ed50

这使得文件838112ed50本身,然后使git diff命令变得模糊,关于我是否尝试区分文件或分支。