我们有两个独立的团队正在开发相同的产品:设计和验证。 Designer添加了功能,运行一个简单的测试来检查设计是否已编译,并且正在运行一个非常基本的测试,需要将其传递给验证团队。 我的问题和关注点是:设计人员如何轻松安全地传递提交而无需将其推送到服务器?否则它可能是一个很长的提交历史,我想避免。 如果设计人员可以与验证团队合作而不将更改推送到服务器,那么所有这些提交都可以被压缩为单个提交然后推送。
答案 0 :(得分:1)
不将它们推送到服务器
使用Git,你不必将自己限制在""" (一)服务器。
您可以添加为远程另一个服务器,专门用于QA测试,设计师可以在这里推送。
接收后的钩子可以:
换句话说,QA服务器充当设计器提交和实际服务器之间的网关。
另一种方法是将这些提交推送到(一)服务器,但是在专用分支中,由验证团队合并到测试传递的主人。
答案 1 :(得分:0)
您绝对不必使用commits
限制git
。这不是它的目的。最佳实践之一是Commit Early And Often。如果您想在存储库中有一些订单,则必须使用branches
。
在您的情况下,您可以使用branch
来设计功能,当该功能完成后,设计团队可以在branch
附近运行测试。这样做,验证团队将看到一个功能被合并,然后将验证它。
git
有一个非常好的扩展名,可以让这项工作变得更加轻松git-flow.
也许这就是你真正想要的。
答案 2 :(得分:0)
如果有合理的理由希望在不推送到中央服务器的情况下传递提交,您可以查看git-bundle
,它允许您打包一个或多个提交并将它们作为单个文件直接发送
编辑:如果OP真的想要避免重写历史记录(即使在单独的分支上)并且有额外的提交,一种可能的解决方案(通常不推荐)是根本不创建提交,并简单地传递补丁文件。
git diff > MyChange.patch
。他通过电子邮件发送给QA。patch -p1 < MyChange.patch
。 QA现在与开发人员具有相同的状态,没有创建任何git提交。