gpt4 book ai didi

git - 如何验证 git exile 是否有效?

转载 作者:太空狗 更新时间:2023-10-29 13:03:26 25 4
gpt4 key购买 nike

我尝试使用 git exile。这是我通常采取的一系列行动:

  1. 将大文件复制到存储库(这样我用"new"内容替换文件的“旧”内容)。
  2. git add(我想我们不会将二进制文件复制到“暂存区”/“索引”,因为存储库是“exile”。相反,“暂存区”只会获得指向“巨大的”内容。)
  3. git exile push(我不知道它是做什么的。)
  4. git 提交

我的期望是,在此操作之后,“巨大”文件的内容将被复制到驱动器,并且这些文件的原始内容(在本地存储库中)将被指向它们在驱动器上的位置的链接所取代。但是,出于某种原因,我无法明确验证它。我的存储库中仍然有大量二进制文件(至少这是我用 lsdu 命令看到的,或者当我用 less 打开文件时看到的)。

也许我的理解有误。也许“链接”仅存在于“暂存区”中,而不存在于“工作树”/“文件系统”中。

我基本上想要的是在两种状态之间切换:(1) 一些文件包含原始的大量内容,(2) 文件包含指向复制到驱动器的大量内容的链接。

换句话说,当我克隆(或 pull )存储库时,我在某些文件中看到了“链接”(而不是实际的二进制内容)。然后我用巨大的“二进制内容”替换这些链接。执行上述命令序列(“git add”+“git exile push”+“git commit”),结果,我的工作树中仍然有巨大的二进制文件。 但现在我想将本地存储库推送到远程存储库,我不想推送二进制文件,我想推送新链接。我 pull 了链接,我想推送链接。我怎样才能实现它?

最佳答案

链接 1:git-exile github 上的文档可能很有趣:

https://github.com/patstam/git-exile

链接 2:查看这篇文章了解机制:

What is the difference between "git push" and "git exile push"?

也许可以澄清您的一些问题:

替换实际上发生在 git add time(见链接 2)

当你使用git exile push时:

When you add files to git, git-exile stores the real content in the .git/exile folder and uses the data there to silently replace references with the real file contents when needed.

当你按下时:

This will look for exiled files in the current directory and all subdirectories, and push the objects corresponding to the current version to the remote repository.

你似乎有不止一个问题,可能是关于 git exile 的整体逻辑/理解。我建议查看该机制的这 2 个链接 :)不过,我希望这能有所帮助!

关于git - 如何验证 git exile 是否有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49757426/

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