在git中一次提交一个

在git中一次提交一个,git,Git,git add-p允许您一次遍历每个修改的文件 我想要一个类似的版本;但是,它需要允许您一次处理一个文件。我希望能够转移并提供提交消息。那么您想这样做吗 git add <file1> git commit [-m "message"] git add <file2> git commit [-m "message"] ... git添加 git提交[-m“消息”] git添加 git提交[-m“消息”] ... 我认为您需要开关-o,例如: git commit -o

git add-p
允许您一次遍历每个修改的文件


我想要一个类似的版本;但是,它需要允许您一次处理一个文件。我希望能够转移并提供提交消息。

那么您想这样做吗

git add <file1>
git commit [-m "message"]
git add <file2>
git commit [-m "message"]
...
git添加
git提交[-m“消息”]
git添加
git提交[-m“消息”]
...

我认为您需要开关-o,例如:

git commit -o file1

下面是我用来快速浏览git status中所有修改过的项目的方法。我们一次提交一个,这样我可以为每个提交添加评论

for each_git_file in
`git status | egrep 'modified|new file' | awk -F: '{print $2}' | sed 's/[\W\.]*//'`;
 do
     git commit -o $each_git_file;
 done

你的问题很不清楚你想实现什么。我同意安德鲁的观点。是否要为每个文件单独设置每个文件的消息?请详细说明。可能重复@David如果您在git中执行此操作,提交是本地的,甚至可以在其他人看到它们之前使用
git rebase-i
进行调整,因此不需要在一个命令中完成上述所有操作,如果您担心的是这一点的话。如果您真的想在一个命令中完成这一切,我想您可以编写一个小脚本,通过某种形式的
git status
的输出进行迭代,在每个命令上调用
git add
git add-p
,然后调用
git commit
(无
-m
)允许您在文本编辑器中指定消息。是,这是OP想要的,一个添加和提交文件的命令使用此选项也可以列出所有要提交的文件
git commit-o file1 file2 file3也被允许……这不仅限于三个文件。有趣的是:
git commit-o file1
绕过
。gitignore
s。也许是安全问题?