git - 创建存储库的快速快照(git?)

标签 git snapshot

我搜索了很多次,但不清楚 git 是否是我想做的事情的正确工具。 当我编写代码时,我想创建整个存储库的快速快照,以便在各个地方测试内容。我忘记了在哪里添加/编辑代码,所以将整个存储库“恢复”到初始状态是一件好事。这些快照需要能够永久维护或删除,因为这些只是测试和实验。

VM 快照很慢并且会中断连接。我在考虑 Git 及其分支功能。但据我所知,git 会永远保留所有内容,除非给出一些特殊的危险命令来删除内容。

我想要什么: 提交多个快照,能够在它们之间切换并在我将所有内容推送到在线存储库时永久删除它们。我不想因为无用的代码和无用的提交而使 View 困惑,从而在存储库上浪费空间。

这可能是一个菜鸟问题,不幸的是,互联网上的每个指南都讲述了很多命令和概念,但很少有实际用例。

非常感谢大家

最佳答案

When I write code I would like to create quick snapshots of the entire repository for testing stuff in various places.

是的,git 对此非常有用。

And these snapshots need to be able to be maintained or deleted permanently, as these are just tests and experiments.

分支机构会为您做这件事。

as far as I can see git keeps everything forever,

不,那不是真的。它只保留所有具有与之关联的分支或标签的提交,以及直接指向它们的所有内容。其他无法通过任何分支或标记访问的提交将(在一段时间后)通过垃圾收集自动删除。

What I would like: Commit multiple snapshots, be able to switch between them and permanently delete them when I push everything to the online repository.

是的,git 分支。

I don't want to waste space on the repo because of useless code, with useless commits that clutter the view.

是的,他们会离开;除非我们在这里谈论的是 Linux 规模的项目,否则空间应该不是问题。

This might be a noob question, unfortunately every guide on the internet tells lots of commands and concepts with few real use cases.

http://gitready.com/beginner/2009/02/17/how-git-stores-your-data.html是一个很好的介绍; https://www.jayway.com/2013/03/03/git-is-a-purely-functional-data-structure/有很多细节(在第一个链接后阅读,可能对你来说太过分了)。

关于git - 创建存储库的快速快照(git?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38767465/

相关文章:

git - 推送失败但 git status 显示没有要提交的内容

python - Python 项目的预提交 Hook

ruby-on-rails - Rails Capistrano - SSHKit::Command::Failed:捆绑退出状态:16

c++ - 在 32 位和 64 位操作系统中拍摄进程快照是否有效?

maven - 使用 Snapshot 策略部署在 nexus Artifact 上,但版本中没有 SNAPSHOT 字符串

javascript - 如何绕过或修复此 git clone 错误?

git - 如何列出未推送的 Git 标签

Elasticsearch:恢复具有不同分片数的快照

android - 如何手动创建 Android savegame(快照)冲突?

Python 看门狗 : what is the 'empty' directory snapshot?