gpt4 book ai didi

git - 将 git commit 与提取的目录进行比较

转载 作者:太空狗 更新时间:2023-10-29 13:57:52 28 4
gpt4 key购买 nike

我有一个 git 目录和另一个单独的目录,我在其中提取了所有文件,但没有 .git 目录

我的问题是:

如何将 git 目录的特定提交与提取目录中的文件进行比较?

编辑:

  1. 我知道提交哈希,
  2. 我不能执行 git checkout,因为我想保持 git 目录完好无损
  3. 我有一个很大的 git 树,我需要尽可能快地做 diff
  4. git 目录不一定是特定提交的 checkout 。

最佳答案

您可以暂时(仅在 git diff 命令本身的持续时间内)覆盖 Git 对工作树所在位置的概念:

git --work-tree=<path-to-tree> diff <commit>

或者,等效地,从该路径:

git --git-dir=<path-to-.git-directory> diff <commit>

(在从给定的 . 目录获取提交时使用 .git 作为工作树路径)。

使用最方便的那个。这甚至可能是使用两个 选项。具体来说,用 --git-dir=<em>path</em> , Git 将假定当前工作目录是工作树的顶层,除非您还指定 --work-tree=<em>top-of-work-tree</em> .一个或两个路径可能与当前工作目录相关。

(这一切都适用于 git diff-treegit diff-indexgit diff-files,尽管它可能最适合用于脚本的 git diff-tree 和用于个人用途的 git diff。)

关于git - 将 git commit 与提取的目录进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54445705/

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