如何解决错误:pathspec '...' 与 git
我打电话给git checkout HEAD~2 "Finished 1 stage"
(或只是git checkout "Finished 1 stage"
)
然后我得到 error: pathspec 'Finished 1 stage' did not match any file(s) kNown to git
git 日志:git log
希望你能帮帮我!
解决方法
当你说
listOfCol = list(df.columns.values)
colOne = listOfCol[0]
for index,row in df.iterrows():
columnValue = df.loc[index,colOne]
if ("Generating" in columnValue or "Total Records" in columnValue):
df = df.drop(df.index[index])
print(df)
然后你签出提交,它是在 HEAD 后面的 2 个提交,它是分支的头。您可能只需要上面的命令。
您的错误消息表明“完成 1 个阶段”是一个不存在的文件。显然这是一个提交消息,这是不必要的传递和 git 解释
git checkout HEAD~2
作为
结帐到 HEAD~2,但仅适用于名为“完成 1 个阶段”的文件
,我正在尝试从提交“完成 1 个阶段”中获取文件
在 Git 中,提交是编号,作为一个又大又丑的 hexadecimal 数字。 git checkout
或 git restore
在这里实际需要的是提交的编号。因此,在原始级别,您可能会这样写:
git checkout a123456
这意味着切换到(整个)提交(作为“分离的 HEAD”);然后,您的工作树将包含来自该提交的文件,以及 Git 未触及的任何未跟踪文件,这些文件保留在之前的位置。1
如果您只想要来自该特定提交的一些特定文件,最好的(最安全的)表达方式是:
git checkout a123456 -- path/to/file1.ext name/of/file2.ext
例如。请注意,此请求意味着销毁我在这两个文件中的任何未保存的工作,Git 会在不询问的情况下执行此操作。此处的两个破折号 --
将 提交说明符 a123456
与两个路径名分开。如果您省略这两个破折号,Git 会假设它们,只要文件名不类似于选项说明符或类似。例如,假设您想获得一个名为 -b
的文件。名称 -b
也看起来像 option -b
。这两个破折号帮助 Git 确定某些东西是一个选项(如果它在 --
的左侧)或不是一个选项(如果它是在 --
的右侧)。
现在,那些大而难看的哈希 ID 很难输入。您可以使用 git log
找到您想要的提交,然后使用鼠标剪切并粘贴哈希 ID。但这仍然不是很漂亮。有时,使用大而难看的哈希 ID 以外的其他东西可能会很好,甚至是像 a123456
这样的缩写 ID。您使用 HEAD~2
是一种避免必须输入哈希 ID 的方法。
如果 HEAD~2
命名那个提交——它可能——那么HEAD~2
是你需要的一切并且是你应该输入的一切。提交的主题文本,例如“已完成 1 个阶段”,不应包含在此处。
要查看来自 HEAD~2
的哈希 ID,您可以运行 git rev-parse
。除了说明 git checkout
如何将字符串 HEAD~2
转换为哈希 ID 外,此命令并没有那么有趣:
$ git rev-parse HEAD~2
7652ce966f9b398e02a5df0344d015c4d54ca52a
(您的结果会有所不同)。要更好地查看提交,请考虑使用 git show
:
$ git show HEAD~2
(此处不包括输出)。
有多种方法可以使用日志消息来搜索提交。这些在 the gitrevisions documentation 中有描述,值得随着时间的推移反复阅读。但如果 HEAD~2
就足够了,您可能应该使用它。
1对于已修改但尚未提交的文件,有一种特殊情况。有关血腥详情,请参阅Checkout another branch when there are uncommitted changes on the current branch。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。