我想用 git 尝试一些东西,我不想在工作存储库中搞砸任何事情。
为了保证事情的安全,我制作了一份我从这个仓库工作的裸仓库的副本,我打算做我所有的推送和标记。我用了:
cp --preseve -r original.git copy_of_original.git
尽管我知道可以撤消错误的提交和诸如此类的东西,但我不想将所有这些还原的提交留在仓库中,也不想进行任何重构,因此我希望只从一个重复的、裸露的仓库中工作。
问题是,我执行以下操作:
git diff --name-only master@{"5 day ago"} master
然后回来:
warning: Log for 'master' only goes back to Fri, 15 Feb 2013 20:42:43 -0500.
我不想接触的原始仓库确实有 5 天前修改过的文件。
如果我git log
在复制的 repo 上执行,这些 5 天前的更改记录都还在。
这里发生了什么?
有没有更好的方法来制作存储库的独立副本?
更新 1
我意识到我的问题不准确。我跑过:
git diff --name-only master@{"5 day ago"}
在产生的目录中:
git clone copy_of_original.git clone_of_copy