Php 在github上维护同一项目的两个不同版本的正确方法是什么?

Php 在github上维护同一项目的两个不同版本的正确方法是什么?,php,git,github,laravel-5,version-control,Php,Git,Github,Laravel 5,Version Control,我必须说,我对Git和Github还不熟悉,对于这样一个基本的问题,我提前表示歉意。我在GitHub上创建了我的第一个PHP“幼虫包”项目。我进行了多次提交,并使用GitBash将它们推送到GitHub上 现在,我的代码足够稳定,处于生产准备阶段。我怎样才能为每个人下载做好准备 一旦第一个版本可以下载,我想制作另一个用于开发的版本,我将为下一个版本添加更多功能 我希望最终得到至少稳定的版本和另一个开发版本。如果有人在我的生产版本中报告了一个bug,我希望能够对其进行修补,并只提交到生产版本中,“

我必须说,我对Git和Github还不熟悉,对于这样一个基本的问题,我提前表示歉意。我在GitHub上创建了我的第一个PHP“幼虫包”项目。我进行了多次提交,并使用GitBash将它们推送到GitHub上

现在,我的代码足够稳定,处于生产准备阶段。我怎样才能为每个人下载做好准备

一旦第一个版本可以下载,我想制作另一个用于开发的版本,我将为下一个版本添加更多功能

我希望最终得到至少稳定的版本和另一个开发版本。如果有人在我的生产版本中报告了一个bug,我希望能够对其进行修补,并只提交到生产版本中,“因此,作为开发人员的新未来不会包含在修补程序中”


适应这种情况的最佳方式是什么?我可以使用哪些命令创建和轻松维护同一项目的多个版本,以便在一个版本中添加新功能,而在另一个版本中只添加补丁?

分支

您可以使用
主控
分支进行开发,也可以使用一个单独的分支(例如
生产
)合并一些主控提交。要保持对不同版本的跟踪,您可以
标记它们


使用GitHub,您可以发布基本上是回购快照的
发行版。

分支机构

您可以使用
主控
分支进行开发,也可以使用一个单独的分支(例如
生产
)合并一些主控提交。要保持对不同版本的跟踪,您可以
标记它们


使用GitHub,您可以发布本质上是回购快照的
版本。

实现这一点的最佳方法是通过分支

在您的情况下,这意味着有一个名为
master
(默认)和
developer
(或类似的分支)

有助于掌握分支的窍门

要创建新分支,请使用
git branch[name]

要切换到该分支,请使用
git checkout[name]

您需要在
develope
分支上进行开发。当
develope
分支处于您想要发货的状态时,您可以将其放入
master
,实质上将新的更改推送到生产分支


如果您对此工作流有任何疑问,请告诉我,我可以尝试回答。

最佳方法是通过分支

在您的情况下,这意味着有一个名为
master
(默认)和
developer
(或类似的分支)

有助于掌握分支的窍门

要创建新分支,请使用
git branch[name]

要切换到该分支,请使用
git checkout[name]

您需要在
develope
分支上进行开发。当
develope
分支处于您想要发货的状态时,您可以将其放入
master
,实质上将新的更改推送到生产分支


如果您对此工作流有任何疑问,请告诉我,我可以尝试回答。

这里有一个简单的方法

  • 您在master branch上工作并提交。如果有人给你一个拉请求,你将代码合并到master

  • 一旦您认为代码已经准备好发布,就可以通过
    git branch release_vX.Y.Z
    创建一个具有发布名称的新分支

  • 在测试代码时,修复发布分支上的错误,并通过
    git cherry pick

  • 在release commit by
    git标记上创建一个标记

  • 如果你在一个大项目上工作,更好的方法是

  • 您在个人分支上工作,如
    dev
    ,可以随时签入并将代码提交给
    dev
    分支

  • 如果有人创建拉取请求,请将其代码合并到master

  • 完成工作后,将所有更改提交到
    dev
    分支。然后

    3.1通过git checkout master和git pull与github同步
    master
    branch 3.2通过git checkout dev将您的
    dev
    分支重新设置为最新更改;git rebase origin/master
  • 。您可能需要解决冲突并提交。 3.3将所有
    dev
    提交合并为一个提交
    git reset master
    将把提交日志重置为master,但保留您的更改,然后
    git add
    添加所有更改并
    git commit
    创建一个新的提交。 3.4通过
    git checkout master将您的
    dev
    更改合并到
    master
    分支;git合并开发

  • 如果您认为代码足够稳定,那么可以创建一个用于测试和bug修复的版本。如果没有测试或bug修复,那么您可以在commit by
    git tag release\u vX.Y.Z
    上创建一个release标记


  • Atlassian有一篇关于基于git的通用软件开发的git工作流的优秀文档。这里是链接

    这里是一个简单的方法

  • 您在master branch上工作并提交。如果有人给你一个拉请求,你将代码合并到master

  • 一旦您认为代码已经准备好发布,就可以通过
    git branch release_vX.Y.Z
    创建一个具有发布名称的新分支

  • 在测试代码时,修复发布分支上的错误,并通过
    git cherry pick

  • 在release commit by
    git标记上创建一个标记

  • 如果你在一个大项目上工作,更好的方法是

  • 您在个人分支上工作,如
    dev
    ,可以随时签入并将代码提交给
    dev
    分支

  • 如果有人创建拉取请求,请合并他们的请求