set -e
cd /source
git clone --depth 1 https://github.com/named-data/ndn-cxx.git
pushd ./ndn-cxx
git checkout -b release-build ndn-cxx-0.3.3
./waf configure
./waf
./waf install
popd
rm -rf ./ndn-cxx
我正在运行上面提到的脚本,但收到错误:“克隆 进入'ndn-cxx'...... / source / ndn-cxx / source 致命:无法同时更新路径并切换到分支'release-build'。 您是否打算结帐'ndn-cxx'哪个无法解析为提交?“
答案 0 :(得分:3)
默认情况下,如果您指定--depth
选项,git将仅获取主分支,因此您无法结帐到任何其他分支。
您可以写下以下内容:
git clone --depth 1 <url> --single-branch --branch <branch>
取代最新版本的<branch>
,如下所示:
git clone --depth 1 https://github.com/named-data/ndn-cxx.git --single-branch --branch ndn-cxx-0.3.3
克隆
后你不必做git checkout
答案 1 :(得分:0)
正如@ edi9999所述,--depth
选项默认情况下会提取单个分支。如果要获取指定深度尖端附近的所有其他分支,则必须指定--no-single-branch
选项。
例如
git clone https://github.com/named-data/ndn-cxx.git --depth 1 --no-single-branch