我正在尝试使用已推送到 GitHub 的分支将 6 个提交压缩为单个提交。
我尝试通过命令行执行此操作,但我一直收到 no-op 而不是该分支的提交。
有没有办法通过 GitHub 桌面做到这一点,这可能更有意义?
如果可能,请逐步提供;
我是使用 GitHub 进行协作的新手,我的知识并没有超越 git add、commit 和 push。
我正在尝试使用已推送到 GitHub 的分支将 6 个提交压缩为单个提交。
我尝试通过命令行执行此操作,但我一直收到 no-op 而不是该分支的提交。
有没有办法通过 GitHub 桌面做到这一点,这可能更有意义?
如果可能,请逐步提供;
我是使用 GitHub 进行协作的新手,我的知识并没有超越 git add、commit 和 push。
为了做一个 git squash 遵循这些步骤:
// X is the number of commits you wish to squash, in your case 6
git rebase -i HEAD~X
一旦你压缩你的提交 - 选择s
for squash = 它会将所有提交合并为一个提交。
如果需要,您还有 --root 标志
尝试:git rebase -i --root
- 根
Rebase all commits reachable from <branch>, instead of limiting them with
an <upstream>.
This allows you to rebase the root commit(s) on a branch.
When used with --onto, it will skip changes already contained in `<newbase>`
(instead of `<upstream>`) whereas without --onto it will operate on every
change. When used together with both --onto and --preserve-merges, all root
commits will be rewritten to have `<newbase>` as parent instead.`
Thoughtbot 的这篇文章可能会帮助您通过命令行完成它。确切地知道自己在做什么可能比依赖 Git 的 GUI 工具要好。从长远来看,它将使您受益。
https://thoughtbot.com/blog/git-interactive-rebase-squash-amend-rewriting-history