Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git默认提交消息包括在预提交钩子中重置的文件_Git_Pre Commit Hook_Commit Message - Fatal编程技术网

git默认提交消息包括在预提交钩子中重置的文件

git默认提交消息包括在预提交钩子中重置的文件,git,pre-commit-hook,commit-message,Git,Pre Commit Hook,Commit Message,在我的工作流程中,我想对文件进行一些更改,并将它们保存在本地计算机中。为此,我编写了一个pre-commithook来在任何提交之前重置这些文件 问题在于默认消息: # Changes to be committed: # FileToBeCommited1 # FileToBeCommited1 # FileAlreadyResetByPre-comitHook 具有将提交的文件列表。出于某种原因,它总是包含我已经在钩子中重置的文件名。 这其实不是什么大问题,但如果可能的话,我希

在我的工作流程中,我想对文件进行一些更改,并将它们保存在本地计算机中。为此,我编写了一个
pre-commit
hook来在任何提交之前重置这些文件

问题在于默认消息:

# Changes to be committed:
#   FileToBeCommited1
#   FileToBeCommited1
#   FileAlreadyResetByPre-comitHook
具有将提交的文件列表。出于某种原因,它总是包含我已经在钩子中重置的文件名。
这其实不是什么大问题,但如果可能的话,我希望它能得到解决。另外,我不想自己编写
prepare commit msg
hook来编写完整的消息。

另一种方法是使用以下命令来处理这些文件:

这样,就不需要钩子来重置它们。

并且提交消息保持干净。

谢谢,但我不想寻找替代方法,因为此方法有其自身的缺点,如重新基线或合并以静默方式覆盖。在预钩方法中,我必须有意识地阶段化并重新应用。。。我喜欢这种方法better@Suryavanshi据我所知,在我个人的经验中,这些被跳过的文件不会被无声地覆盖(如中所示),它们确实在git pull--rebase期间被覆盖了。
@Suryavanshi您使用的是什么git版本?@Suryavanshi您能用git 2.7.4或git 2.8测试它吗?
git update-index --skip-worktree -- file1
git update-index --skip-worktree -- file2
git update-index --skip-worktree -- file3