Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.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中的多个提交变为1个提交_Git - Fatal编程技术网

git中的多个提交变为1个提交

git中的多个提交变为1个提交,git,Git,我用多个注释在git中创建了多个commit,我想知道在git中是否可以将多个commit转换为单个commit,如果可以,我们通常使用什么命令 pick xxx1 msg1 pick xxx2 msg2 pick xxx3 msg4 pick xxx5 msg5 pick xxx6 msg6 我想将其更改为仅包含一条注释的一次提交使用squash或fixup将提交合并在一起。Fixup丢弃提交消息并将更改添加到上一次提交中,squash连接消息。假设您的提交历史记录如下所示: X <-

我用多个注释在git中创建了多个commit,我想知道在git中是否可以将多个commit转换为单个commit,如果可以,我们通常使用什么命令

pick xxx1 msg1
pick xxx2 msg2
pick xxx3 msg4
pick xxx5 msg5
pick xxx6 msg6

我想将其更改为仅包含一条注释的一次提交

使用
squash
fixup
将提交合并在一起。Fixup丢弃提交消息并将更改添加到上一次提交中,squash连接消息。

假设您的提交历史记录如下所示:

X <- A <- B <- C <- D(master)
X(master)
确保您处于干净的工作目录状态,然后键入:

git reset X
现在历史看起来是这样的:

X <- A <- B <- C <- D(master)
X(master)
但是您的工作目录的内容是commit
D

现在您可以完成:

git add . -Av
git commit -m "just a big message"
可能的重复可能的重复