每个不同文件的自定义提交消息PhpStorm+;github

每个不同文件的自定义提交消息PhpStorm+;github,git,github,phpstorm,commit-message,Git,Github,Phpstorm,Commit Message,这是我关于StackOverflow的第一个问题,所以我们非常感谢您的建议 我正在使用PhpStorm作为IDE,我和我的合作伙伴正在使用GitHub作为版本控制系统 每次进行提交更改(如推送)时,Git允许您对更改的文件添加注释 然后我们就到了问题所在的地方 如图所示,我已更改了3个文件(1个php类文件和2个小树枝模板): 问题是,我想为每个不同的文件添加一条提交消息,但提交消息框只允许您对每个文件添加相同的注释 唯一的方法是分别提交每个文件,但是我想要一个更快的方法。在PhpStorm中

这是我关于StackOverflow的第一个问题,所以我们非常感谢您的建议

我正在使用PhpStorm作为IDE,我和我的合作伙伴正在使用GitHub作为版本控制系统

每次进行提交更改(如推送)时,Git允许您对更改的文件添加注释

然后我们就到了问题所在的地方

如图所示,我已更改了3个文件(1个php类文件和2个小树枝模板):

问题是,我想为每个不同的文件添加一条提交消息,但提交消息框只允许您对每个文件添加相同的注释


唯一的方法是分别提交每个文件,但是我想要一个更快的方法。

在PhpStorm中没有更快的方法。提交消息是关于您正在提交的更改的,它不是特定于文件的。如果希望每个文件有不同的提交消息,则需要将它们拆分为多个提交。唯一可能更快的方法是不使用PhpStorm,而是从命令行执行(假设已安装
git

首先运行
git status
,以确保尚未为提交暂存任何内容。如果存在,请运行“
git reset HEAD path\to\file”
以取消文件的存储

然后,对于每个文件,您可以添加它们(一次添加一个文件,一次添加一个文件夹,或者其他任何剩下的文件)并通过消息提交。注意:我使用Linux机器进行开发,从未尝试过从Windows命令提示符运行git,但我假设Windows上的命令是相同的:

git add src\Controller\UserController.php
git commit -m "Commit message for UserController.php"

git add src\View\templates
git commit -m "Commit message for home.twig and publicProfile.twig"

git add .
git commit -m "Commit message for remaining files, like in web\assets\js"

git push

git push
应该为您将这3个提交推送到Github。

在PhpStorm中没有更快的方法。提交消息是关于您正在提交的更改的,它不是特定于文件的。如果希望每个文件有不同的提交消息,则需要将它们拆分为多个提交。唯一可能更快的方法是不使用PhpStorm,而是从命令行执行(假设已安装
git

首先运行
git status
,以确保尚未为提交暂存任何内容。如果存在,请运行“
git reset HEAD path\to\file”
以取消文件的存储

然后,对于每个文件,您可以添加它们(一次添加一个文件,一次添加一个文件夹,或者其他任何剩下的文件)并通过消息提交。注意:我使用Linux机器进行开发,从未尝试过从Windows命令提示符运行git,但我假设Windows上的命令是相同的:

git add src\Controller\UserController.php
git commit -m "Commit message for UserController.php"

git add src\View\templates
git commit -m "Commit message for home.twig and publicProfile.twig"

git add .
git commit -m "Commit message for remaining files, like in web\assets\js"

git push

git push
应该为您将这3个提交推送到Github。

git不允许为提交中的每个文件创建不同的提交消息。参见,例如,或


因此,如果您等待不同的消息,则需要分别提交每个文件。

Git不允许在提交中为每个文件创建不同的提交消息。参见,例如,或


因此,如果您等待不同的消息,则需要分别提交每个文件。

您不能从复选框中删除勾号吗?(不是phpstorm用户,只是猜测..这就是为什么这不是一个“答案”)您正在提交更改,如果更改影响多个文件,那么您应该在注释中反映出来。@meda这将非常限制对版本控制的查看。此外,他不想提交所有这三个更改,因为这些文件中的每一个都可能是因为不同的原因而更改的。你没有提交文件,你提交的是整个工作树的快照,所以当git强制你为所有提交的文件写一条提交消息时,这不仅仅是迟钝,但1个提交等于1个提交消息。如果该提交包含1000个文件,则该提交仍将有1条提交消息。如果您希望每个文件有一条提交消息,那么您还必须对每个文件进行一次提交。你想要一个更快的方法,但真的。。。为什么?为什么要分别提交每个文件?是的,你是对的,它看起来确实很脏,但那是因为你将不相关的更改集中在一起。那是肮脏的部分。如果您修复了bug X,那么提交消息应该这么说,提交附加的文件数量是修复的详细信息。另一方面,如果您的一次提交每个文件包含1个不相关的更改,那么您基本上没有正确使用源代码管理。一次解决一件事,提交,冲洗,重复。你不能从复选框中删除勾号吗?(不是phpstorm用户,只是猜测..这就是为什么这不是一个“答案”)您正在提交更改,如果更改影响多个文件,那么您应该在注释中反映出来。@meda这将非常限制对版本控制的查看。此外,他不想提交所有这三个更改,因为这些文件中的每一个都可能是因为不同的原因而更改的。你没有提交文件,你提交的是整个工作树的快照,所以当git强制你为所有提交的文件写一条提交消息时,这不仅仅是迟钝,但1个提交等于1个提交消息。如果该提交包含1000个文件,则该提交仍将有1条提交消息。如果您希望每个文件有一条提交消息,那么您还必须对每个文件进行一次提交。你想要一个更快的方法,但真的。。。为什么?为什么要分别提交每个文件?是的,你是对的,它看起来确实很脏,但那是因为你将不相关的更改集中在一起。那是肮脏的部分。如果您修复了bug X,那么提交消息应该这么说,提交附加的文件数量是修复的详细信息。另一方面,如果您的一次提交每个文件包含1个不相关的更改,那么您基本上没有正确使用源代码管理。一次解决一件事,提交、清洗、重复。正如你所说,这是一种方式,但远不是最快的方式:(正如你所说,这是一种方式,但远不是最快的方式:(我明白了:“Git的理念是跟踪‘内容’,而不是‘文件’。感谢链接,请参见: