脚本 - 从git构建旧包

・2 分钟阅读

问题

我尝试运行旧版本的xdotool,这是我做的


git init


pwd


git checkout edbbb7a8f664ceacbb2cffbe8ee4f5a26b5addc8



但它返回了这个错误:


fatal: reference is not a tree: edbbb7a8f664ceacbb2cffbe8ee4f5a26b5addc8



如何使用git正确构建程序的旧版本?

编辑:在网上搜索之后,我发现我需要在末尾添加一个". " ,这样就可以了:


 git checkout edbbb7a8f664ceacbb2cffbe8ee4f5a26b5addc8.



但是现在它给了我这个错误:


 error: pathspec '.edbbb7a8f664ceacbb2cffbe8ee4f5a26b5addc8' did not match any file(s) known to git.




回答1

尝试签出一个git标签或分支,如果你想要的版本被标记。

或者

尝试只使用提交的一部分进行签出,因此在你的情况下:


git checkout edbbb7a8



如果此提交确实存在,还要重新检查


回答2

你的机器上没有repo ,你需要先下载它,例如,使用git clone


~$ git clone https://github.com/jordansissel/xdotool.git


~$ cd xdotool


~/xdotool$ 



然后你可以签出提交:


~/xdotool$ git checkout edbbb7a


Note: checking out 'edbbb7a'.



You are in 'detached HEAD' state.


...



HEAD is now at edbbb7a... Add --repeat and --repeat-delay to allow repetition of a 


key sequence with an optional delay in between each full sequence.



另外,如果你需要从detached HEAD返回,命令是git checkout master 。


Tianye profile image