git - 在 Git 中 checkout 时感到困惑

标签 git clearcase

我无法理解 Git 的 checkout 流程。
通过 cli 我们可以:
git log 和历史记录。
1)我们如何知道我们想要检查哪个文件/版本?我只看到哈希/作者/评论/日期。不是文件名。
2)如果我执行 git checkout -commitid- ,那么我会转到之前的版本。这与在 ClearCase 中进行 checkout 相同吗?
3) 要返回到最新更改,我执行以下操作:git checkout master。这将返回到最新版本,但它是否会 checkout 最新元素?

最佳答案

我认为您混淆了其他版本控制系统使用的术语。 git checkout 是用于切换您正在处理的分支的命令。 git checkout master 会将您切换到 master 分支上工作。 git checkout test 将使您在名为 test 的分支中工作。 尝试回答您的问题:

  1. 我不明白这个问题,但我认为它源于对 checkout 命令的误解。 git 中文件的每个版本都是一个单独的哈希,git log 会显示所有提交,因此您可以在那里看到文件的每个版本。
  2. 要将分支更改为之前的状态,请使用 git reset 命令。 git checkout -commitid- 实际上会分离你的 HEAD 指针,并且不会 checkout 任何分支。这可以用来查看提交时的状态
  3. git checkout master 会将您的工作分支更改为 master。为了返回最新的更改,人们会做很多事情,例如,有时他们会 stash 现有的更改,然后删除该 stash 的更改。

关于git - 在 Git 中 checkout 时感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16468156/

相关文章:

clearcase - 如何编写 Rational ClearCase 配置规范以基于目录进行 checkout ?

linux - ClearCase Linux GUI 错误比较/ checkin /描述/

svn - 从 ClearCase 迁移到 SVN 时的最佳策略是什么?

Git 响应 'error in sideband demultiplexer'

android - 系统找不到指定的文件Gradle Android

Git 部署在 MediaTemple DV 上

Git-svn 拒绝在 svn 存储库上创建分支错误 : "not in the same repository"

用于 git clone 的 Python 脚本,无需在提示符下输入密码

clearcase - 在 ClearCase 中,如何从命令行以静态 View 查看文件的旧版本?

git - 是否可以使用与创建 Clearcase View 的帐户不同的帐户进行 checkin