2017-06-26 53 views
0

我一直在单独开发一个项目。为了跟踪我的更改,我在该项目上使用了git。该项目几个月前完成。一个月后客户想要升级一些功能,所以我下载了这个项目,并开始研究这些新功能,在这段时间内,一些严重问题出现在活动服务器上,所以我不得不在那里做一些修改。在同一分支(master)中完成的Git diff/merge修改

现在,我的问题是如何将实时服务器更改合并到我的开发服务器新功能。

谢谢。

+0

你有任何单独的分支来执行这些更改吗? –

+0

如果您没有制作任何单独的分支,那么您可以将主分支部署到您的现场服务器,但使用jenkins或其他一些测试设置(它是现场克隆来测试更改)总是更好。 –

+0

@ShivangAgarwal不,我没有。我从一开始就一直在master分支上工作,因为我使用git来跟踪我的更改。 –

回答

1

您的用例是常见的,并且Git的大多数用户在企业软件团队环境中每天都会遇到这种情况。你可以尝试以下步骤:

  • 提交您的当前本地工作
  • git pull origin branch_name从直播服务器
  • 解决任何合并冲突可能发生
  • 然后做了修改,使git push origin branch_name将您的本地更改带入现场服务器

正如一些评论中提到的那样,直接与您的实时服务直接合作可能不是一个好设计r以这种方式。更典型的是,您将使用功能分支,可以仔细检查功能分支,然后将其部署/合并到活动服务器。

+0

但为此,我需要在现场服务器中提交我的更改,对吧?其中我没有SSH访问权限,但有cPanel访问权限来下载整个源代码。 –

+0

如果你在服务器的'master'分支上没有推送权限,那么真正没有_anything_你可以在现场服务器上进行操作。如果是这样,那么你需要先解决这个问题。也许你可以创建一个单独的分支,然后让管理员将它合并到'master'中。 –

+0

嗯,我想我可以获得SSH访问权限,如果我向托管服务提供商请求它的话。但在开始思考这种情况时,我还没有配置任何东西。我所做的全部都是'git init',并且进行了修改,并通过FTP将整个文件上传到实时服务器。你能否给我提供一些参考资料。 –

相关问题