gpt4 book ai didi

带点的 Git checkout

转载 作者:IT王子 更新时间:2023-10-29 01:01:13 34 4
gpt4 key购买 nike

下一个 git 命令有什么区别:

git  checkout branch
git checkout branch .
git checkout . #<-- used at the branch

为什么当我用第一个分支将不同的分支 checkin 不同的文件夹时,我错过了一些文件。
但是当我使用第二个命令时,一切正常吗?

最佳答案

git checkout(1)无论是否给定路径说明符,都会做非常不同的事情。

  1. 仅使用分支说明符 (git checkout branch) 它将当前工作目录切换到指定分支,尽可能保留本地更改,否则失败。如果你已经在 branch 上,它什么都不做。它只修改工作目录中 HEADbranch 不同的文件,如果其中任何文件有本地修改(索引或不索引),它就会失败。
  2. 使用路径说明符,它将用指定的内容覆盖所有匹配的文件(所有文件都匹配.):
    1. 仅使用路径说明符 (git checkout .) 它从索引中写入内容。也就是说,它撤消未暂存的本地修改。要撤消暂存修改,请使用带路径说明符的 git reset
    2. 使用分支和路径说明符 (git checkout branch .),它将内容写入指定的修订版。它不会修改HEAD 指向的位置,因此如果branchHEAD 不同,之后会有未暂存的更改.

请注意,man page区分使用 -b/--branch 选项和 -p/--patch 选项的其他情况,但这些大多是上述情况的直接扩展。

关于带点的 Git checkout ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14460595/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com