git如何放弃.git目录中的变化?

时间:2012-12-12 08:24:26

标签: git version-control githooks

我在.git / hooks目录上做了一些更改。现在我希望放弃这些更改并将.git / hooks恢复到其初始状态。我可以这样做吗?

3 个答案:

答案 0 :(得分:1)

Git目录.git未进行版本控制。 Git不保存.git/hooks目录中的文件副本。你必须自己做备份。

答案 1 :(得分:1)

Git只跟踪工作目录中的内容并省略.git文件夹。

但是,您可以通过创建一个单独的分支来跟踪git文件夹中的任何内容,然后告诉git该工作树存在于那里。我展示了如何使用rerere和它创建的rr-cache来做到这一点。示例语法为:

git --work-tree=.git/hooks --git-dir=.git add -A

您还必须为提交重复这些选项。

以下是有关如何共享您的rerere缓存的帖子:Sharing rerere cache

如果你想分享你的钩子,这应该让你开始。

答案 2 :(得分:0)

获取初始挂钩的最简单方法可能是删除当前挂钩,使用git init创建临时存储库,并将钩子脚本从那里复制到现有存储库的hooks目录中。

您还可以尝试找到git在系统中存储其默认挂钩模板的位置,并直接从那里复制它们。