如何在git中半手动控制文件?

如何在git中半手动控制文件?,git,githooks,git-config,Git,Githooks,Git Config,我的问题是这样的: 我有一个包含.gitconfig文件的dotfiles存储库。 我将此存储库存储在github上,不想在那里显示我的电子邮件/姓名 简单解决方案: 使用--假定未更改或--跳过工作树,并在修改文件时手动添加该文件 更好解决方案的想法: 使用--假定未更改或--跳过工作树,与一些预提交钩子结合使用,该钩子尝试应用修补程序,以查看除了索引版本中缺少电子邮件外,是否对文件进行了任何修改。如果有,则停止提交 关于如何实施这样的事情有什么想法吗 编辑:棘手的部分当然是让git状态显示文

我的问题是这样的:
我有一个包含.gitconfig文件的dotfiles存储库。 我将此存储库存储在github上,不想在那里显示我的电子邮件/姓名

简单解决方案:
使用
--假定未更改
--跳过工作树
,并在修改文件时手动添加该文件

更好解决方案的想法:
使用
--假定未更改
--跳过工作树
,与一些
预提交
钩子结合使用,该钩子尝试应用修补程序,以查看除了索引版本中缺少电子邮件外,是否对文件进行了任何修改。如果有,则停止提交

关于如何实施这样的事情有什么想法吗


编辑:棘手的部分当然是让git状态显示文件在工作目录中没有被修改,即使它有用户名/密码,并且索引没有,但如果它有其他更改,则显示为已修改。

我知道这不是解决您问题的一般性的方法

但是对于您的具体问题,如果您使用git
>1.7
,有一个简单的解决方案:您可以将用户名和电子邮件存储在不同的文件中,并将其包含在全局
.gitconfig