我正试图将一个文件恢复到不同的目录中,给定文件的相对文件名:
git --work-tree some/directory restore -s HEAD ./numbers.txt
然而,此命令失败,并出现错误:pathspec'/numbers.txt’与git已知的任何文件都不匹配。
我有点困惑,因为没有--work-tree
选项的git restore
不会失败:
git restore -s HEAD ./numbers.txt
那么,可以将git --work-tree dir restore
与相对文件名一起使用吗?
给您带来麻烦的是,当您指定一个显式工作树时,所有路径都相对于该工作树进行解释,.
不再相对于您的当前目录,而是该工作树。所以Git正在寻找一个顶级的numbers.txt
。
当你只想把特定的内容放在那里而没有真正检查出来时,可以使用git show
。这里是git show @:./numbers.txt >some/directory/numbers.txt
。