我一直在和我的小团队开发人员一起使用git和github来完成我们的项目.我不禁想到我们做得不对.我很想知道其他人如何在他们的项目中使用这个工作流程.
我们如何使用它:
我们在每次更改之前进行分支,合并回master,在本地提交并推送到我们的github repo.然后我们进入我们的测试环境并拉出github repo的master分支.我们还没有完全掌握rebase
,fetch
或者tagging
还没有.
我想如何使用它: 我希望能够ssh到不同的服务器并将特定的标记版本,如"阶段1"拉入服务器.这可能,或者我需要两个不同的github回购?
您是否应该将git pull
特定分支放入Web服务器或创建新的别名git push
?
你能控制一个git存储库中的候选版本或环境(测试,开发,生产)吗?或者你需要多个?
如果拉动是解决方案,你可以拉一个特定的tag
?
阅读Pro Git书.你可以阅读一年的git手册页但仍然没有得到它:尝试通过阅读手册来学习git就像试图通过阅读字典来学习一门新语言,它可以完成.本书将教您使用git可以使用的一些工作流程,以及要使用的git命令以及使用它们的上下文.
基本上,您可以很好地使用一个"中央"GitHub存储库.
标签是不可变指针,它们可以随时使用(和推送),以便签出到任何测试或生产环境.这允许进行一些验证,但通常不用于开发.
拉分支意味着您可以在该分支内进行一些改进(由于一些代码在生产环境中时会进行一些错误修正和调整)并将其推回给所有其他开发人员的存储库以供他们撤回并考虑.
因此,这取决于您在这些服务器上所做的事情:仅验证(已接受或拒绝状态),或进一步开发.
在每种情况下,具有适当命名约定的标记很好地跟踪历史记录中的特定提交,但每次需要隔离开发工作时都需要分支.