Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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_Github_Commit_Git Commit - Fatal编程技术网

Git 不提交以前的提交,我只想添加一个提交,该提交接受在我合并的另一个分支上所做的所有其他更改?

Git 不提交以前的提交,我只想添加一个提交,该提交接受在我合并的另一个分支上所做的所有其他更改?,git,github,commit,git-commit,Git,Github,Commit,Git Commit,我想获得更改,但不想发布我在测试分支上所做的所有提交。。。我想要的是,在合并之后,在主机上执行这些更改并提交(一次),而不是发布所有这些提交 谢谢 我什么都没试过,因为我想确定该做什么。然后我再推 git merge test git status 您的分支比“origin/master”提前了6次提交您可以压缩您的提交,但我倾向于更简单地重新提交。我在这里为感兴趣的人发布解决方案: git checkout test git reset --soft origin/master git co

我想获得更改,但不想发布我在测试分支上所做的所有提交。。。我想要的是,在合并之后,在主机上执行这些更改并提交(一次),而不是发布所有这些提交

谢谢

我什么都没试过,因为我想确定该做什么。然后我再推

git merge test
git status

您的分支比“origin/master”提前了6次提交

您可以压缩您的提交,但我倾向于更简单地重新提交。我在这里为感兴趣的人发布解决方案:

git checkout test
git reset --soft origin/master
git commit -m "message for this whole feature"
git push origin HEAD
然后,
test分支
将被推送到远程,您的合并请求
test>master
将只包含上面的一个提交

git merge test --squash
git commit -m "foo bar"

使用
--squash
,更改会被合并,而提交不会被合并。

这不会影响我的合作伙伴以前在主分支上所做的提交吗?thx因为主分支有一些其他人已经承诺的更改。请回答,这样我就可以尝试你告诉我的,当我做“git重置——软源代码/主代码”时,我没有提交更改,即使它们看起来是绿色的,这意味着我没有添加它们或类似的东西。。。这正常吗?@ReynaldRamirezdeLuna
--soft
标志,与默认模式的
--mixed
相反,保持索引中的更改(添加、暂存、缓存,无论您如何称呼它)。你在哪里看到这个“绿色的”?在命令行中,当您执行一个
git status-sb
时,您更改的文件前面应该显示一个绿色字母(分阶段更改),而不是红色字母(未分阶段更改)。Thnx!让我们摇滚吧@ReynaldRamirezdeLuna没有任何参数,它将显示所有历史,但可能会有点不方便阅读。尝试
git log origin/master..
(注意点)关注有趣的部分,并使用您需要的任何格式选项输出与您最相关的信息()。