当我正在处理新代码时,我会做很多小提交来跟踪我的更改.但是,我的公司更喜欢在一次提交中提交每个功能.所以解决方案是将我的整个分支压缩到一个提交.
我怎么压扁整个分支而不使用git rebase --interactive,然后改变pick到squash对所有提交?
关于如何压缩git和其他DVCS的提交,也有很多问题,例如:
我的问题是,我想要压缩提交吗?我应该保留详细的提交顺序,显示功能是如何开发的,还是我应该在功能完成后将它们压缩成一个,以保持历史更清晰?
我不是最好的 Git 用户,每当我创建 PR 时都会遇到问题。基本上,当我做 PR 时,我会看到一个包含我之前所有提交的大列表,包括我刚刚提交的那个(我想合并到 Master 分支的那个)。我做的流程如下:
首先,我分叉了我们 Master 分支的副本,然后
git clone [local copy]
Run Code Online (Sandbox Code Playgroud)
然后我创建一个遥控器
git remote add upstream [main repo url]
Run Code Online (Sandbox Code Playgroud)
然后每次我进行更改时,我都想添加到我的 PR 中:
git add [file1] [file2 ] ...ect
Run Code Online (Sandbox Code Playgroud)
然后提交:
git commit -m 'blah blah blah'
Run Code Online (Sandbox Code Playgroud)
最后推送到原点:
git push origin master
Run Code Online (Sandbox Code Playgroud)
在此之后,我在 Github 上创建了一个 PR,它显示了所有以前的提交。有没有办法不列出所有这些而只显示我的最新提交?它显示已合并到上游 long back 并与其同步的提交。合并时不必选择特定的提交而只选择列出的提交会很好。
谢谢!