GIT 致命:模棱两可的参数“HEAD”:未知修订版或路径不在 Travis 的工作树中
Posted
技术标签:
【中文标题】GIT 致命:模棱两可的参数“HEAD”:未知修订版或路径不在 Travis 的工作树中【英文标题】:GIT fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree in Travis 【发布时间】:2016-09-15 04:44:10 【问题描述】:我有以下配置:
git version 1.8.5.6
GNU bash, version 4.2.25(1)-release (x86_64-pc-linux-gnu)
我打电话给zgit_info_update
并尝试提交。但是在 Travis (Git diff command returns error #6069) 中从 Bash 运行 git diff --name-only dev
时我仍然遇到问题。
我怎样才能让它工作?
这里是输出:
git version 1.8.5.6
GNU bash, version 4.2.25(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
* (detached from FETCH_HEAD)
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
[detached HEAD 72afa70] Add package.json
1 file changed, 37 insertions(+)
create mode 100644 package.json
fatal: ambiguous argument 'dev': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
【问题讨论】:
暗中刺伤:先试试git pull
ing?
【参考方案1】:
更简单的解决方法是
git remote set-branches --add origin $BRANCH_TO_DIFF_AGAINST
git fetch
git diff origin/$BRANCH_TO_DIFF_AGAINST
【讨论】:
解释一下。例如,想法/要点是什么?为什么它可以解决问题?请通过editing (changing) your answer 回复,而不是在 cmets 中(without "Edit:"、"Update:" 或类似的 - 答案应该看起来像是今天写的)。 这和defrex's comment on the issue on GitHub非常相似。【参考方案2】:使用以下命令解决了该问题:
if [ "$TRAVIS" == "true" ]; then
# Resolving `detached HEAD` by attaching HEAD to the `TRAVIS_FROM_BRANCH` branch
TRAVIS_FROM_BRANCH="travis_from_branch"
git branch $TRAVIS_FROM_BRANCH
git checkout $TRAVIS_FROM_BRANCH
# Fetching `TRAVIS_BRANCH` branch
git fetch origin $TRAVIS_BRANCH
git checkout -qf FETCH_HEAD
git branch $TRAVIS_BRANCH
git checkout $TRAVIS_BRANCH
# Switch to `TRAVIS_FROM_BRANCH`
git checkout $TRAVIS_FROM_BRANCH
fi
【讨论】:
解释一下。例如,想法/要点是什么?它应该做什么和实现什么?为什么需要 7 次 Git 调用?请通过editing (changing) your answer 回复,而不是在 cmets 中(without "Edit:"、"Update:" 或类似的 - 答案应该看起来像是今天写的)。以上是关于GIT 致命:模棱两可的参数“HEAD”:未知修订版或路径不在 Travis 的工作树中的主要内容,如果未能解决你的问题,请参考以下文章
git submodule update --init 给出错误致命:需要单个修订版无法在子模块路径中找到当前修订版
错误:无法创建符号链接,致命:无法将索引文件重置为修订版“HEAD”
要从gitlab repo中删除最新的提交,并删除旧的本地提交
尝试使用“brew tap aws/tap”命令在 ubuntu 上通过 brew 安装 aws-sam-cli,出现错误“致命:无法将 HEAD 解析为修订版”