2016-12-28 225 views
1

我需要一些Git协助。 所以,我们有一个开发和测试环境。开发人员正在将git用于'开发'分支,然后将其推送到测试环境,内部利益相关方将审查这些更改。现在问题是,开发团队有10个提交被传递给Test env,其中的利益相关者决定其中8个确定,最终将其推送给Prod。其他2个需要从Test env中丢弃。那些被丢弃的提交将在稍后使用,作为增强,因此他们可以留在开发环境。直到它们被使用。删除git远程分支提交

有没有办法做到这一点?我需要使用git rebase或类似的东西吗? 对不起,如果我的问题听起来太含糊。

+0

如果'develop'分支的变化得到在'Test'环境中发布,你从哪个分支发布到'Dev'环境? –

+2

不要将事情合并到尚未批准的开发中,才是真正的答案。无论用什么方法取消这些东西都会导致错误并最终导致更多的工作。 – bcmcfc

回答

0

可以使用樱桃选秀权选择承诺在开发

+0

樱桃采摘为我工作,谢谢 –

0

合并是的,你可以做简单的interactive rebase

$ git log    # copy the commit-hash before of the commit want to discard 
$ git rebase -i <commit-hash> 

编辑器将打开这些提交messase的列表。然后在您想要放弃的commit-hash前写上#(评论)。

0
  1. 从dev分支中,您需要重置这2个丢弃的提交。
  2. 创建一个名为back_commits的新的基于分支的开发。由于它是从开发分支,back_commits应该有那些2次丢弃的提交,如果有一天你需要使用这些提交,只是挑樱桃他们到任何分支你希望他们在