- 主题:请教大家一个git的使用技巧
rebase。
就好比你的分支一开始从主干较低的位置长出来,后来主干又长高了,你把你的分支砍下来,然后把这个分支接到树干的顶端。你的分支还是你的分支,只是位置不一样了。这样review的人就可以仅仅看到你的分支修改。
【 在 feed 的大作中提到: 】
: rt
: 目前我是开发一个大的feature,但一次commit肯定是做不完的。
: 我新建了一个自己的branch,叫 myBranch
: ...................
--
FROM 61.148.245.*
自己的changelog很重要的话就squash,不那么重要的话直接在develop分支上rebase,当然改动很大时间跨度长的话还是建议前者
【 在 feed () 的大作中提到: 】
: rt
: 目前我是开发一个大的feature,但一次commit肯定是做不完的。
: 我新建了一个自己的branch,叫 myBranch
: 然后会merge到 develop branch上,然后部署测试,测出问题,继续在 myBranch修改,继续merge继续测。
--
FROM 111.197.234.*
我以前也是和你一样认为的
但最近做实验才发现:
除非你新建一个全新的branch,否则你一直复用之前的branch,commit新的PR,那么reviewer看到的是这个branch曾经修改过的所有的记录。我最新的commit仅仅是在所有commit的末尾一个。
不知道你明白我的意思没有。
【 在 eric8888 的大作中提到: 】
: 第一次的100个修改review完了之后并且PR merge了之后,再commit就可以提一个新的PR了啊,新PR应该只会包含当前commit的内容。
--
FROM 120.244.236.*
我为了这个feature,连续不断的从myBranch commit PR到 develop上。
但是文件越来越多之后,reviewer很难看清楚我最近的commit是修改了哪些文件,除非他点击进入这个PR的最后一次commit,否则直接从PR的compare files里是看到 myBranch到develop的所有的修改记录,包括以前commit的文件。
这样github有这样的功能也是有意义的。将来我只需要一份PR link,我就能看到我这个feature对应的所有代码。
但是目前开发的过程中,确实给reviewer造成麻烦。
【 在 remind423 的大作中提到: 】
: 你是想把从myBranch合并到develop上的commit都合并为一个commit,这些commit中间夹杂了其他feature的commit对吧
--
FROM 120.244.236.*
我们现在的pipeline逻辑必须进入develop分支才能自动部署到 dev 环境。我只有在dev环境测试才能发现新的问题,于是又进行新一次的修改。
【 在 irroy 的大作中提到: 】
: 怎么感觉应该弄一个远程分支myBranch?然后再远程分支上测试,
: 最终没有问题之后,dev-merge-myBranch, --squash,
: 然后发送review申请提交到dev。
: ...................
--
FROM 120.244.236.*
关键的问题是:我这个分支,myBranch已经修改了太多次了
接下来的每次从myBranch下提交commit,PR都会看到之前的commit的文件修改。
是不是github能有什么开关呢?这次PR只显示最近一次commit的修改?
【 在 SlO 的大作中提到: 】
: rebase。
: 就好比你的分支一开始从主干较低的位置长出来,后来主干又长高了,你把你的分支砍下来,然后把这个分支接到树干的顶端。你的分支还是你的分支,只是位置不一样了。这样review的人就可以仅仅看到你的分支修改。
--
FROM 120.244.236.*
那就不好办了。
试试cherrypick,只把你的修改提出来。不过有可能会有冲突。
【 在 feed 的大作中提到: 】
: 关键的问题是:我这个分支,myBranch已经修改了太多次了
: 接下来的每次从myBranch下提交commit,PR都会看到之前的commit的文件修改。
: 是不是github能有什么开关呢?这次PR只显示最近一次commit的修改?
: ...................
--
FROM 59.109.146.*
【 在 irroy 的大作中提到: 】
: 怎么感觉应该弄一个远程分支myBranch?然后再远程分支上测试,
: 最终没有问题之后,dev-merge-myBranch, --squash,
: 然后发送review申请提交到dev。
: ...................
有一个配置,就是PR merge之后自动选择删除当前分支。然而本地可以继续用这个分支名字commit,创建PR。
--
FROM 221.182.167.*
这是正解
【 在 SlO 的大作中提到: 】
: rebase。
: 就好比你的分支一开始从主干较低的位置长出来,后来主干又长高了,你把你的分支砍下来,然后把这个分支接到树干的顶端。你的分支还是你的分支,只是位置不一样了。这样review的人就可以仅仅看到你的分支修改。
--
FROM 115.171.170.*
推上去之前自己rebase呗
【 在 feed (鳄鱼) 的大作中提到: 】
: rt
: 目前我是开发一个大的feature,但一次commit肯定是做不完的。
: 我新建了一个自己的branch,叫 myBranch
: 然后会merge到 develop branch上,然后部署测试,测出问题,继续在 myBranch修改,继续merge继续测。
--
FROM 117.136.0.*