【问题标题】:Version control: merging changes between dev and live sites版本控制:合并开发站点和实时站点之间的更改
【发布时间】:2014-08-16 04:06:43
【问题描述】:

我是 git 等版本控制的新手,所以这对某些人来说可能是一个简单的答案……对于我所有的搜索,我找不到一个足够简单的答案。

我正在开发服务器上开发一个 wordpress 网站。另一位开发人员正在对实时(生产)站点进行更改,并且一些更改也通过 ftp 传输到开发站点。

有没有办法让我将这些更改合并到我的本地副本中,这样我就不会覆盖他的更改,而他也不会覆盖我的更改?

我不想将一个文件推送到没有他的更改的实时站点并将实时站点搞砸......

【问题讨论】:

  • 你不能覆盖东西,这不是你应该关心的。 Git 不会让你推送会覆盖远程更改的更改。
  • 我不确定他是否使用了任何版本控制...这有关系吗?
  • 真的很难说。如果他不是“使用版本控制”,他在做什么?只是将文件写入 Git 目录而不提交更改?
  • 据我所知,他只是将文件通过 ftp 传输到实时站点。

标签: wordpress git github version-control


【解决方案1】:

在尝试将更改推送到远程之前,您需要先发送git pull

在您之前掌握最新的master 分支(假设在您的开发服务器上使用)总是一个好习惯

  • 开始处理您的功能分支
  • 推送您的代码

理想情况下,在您开始开发功能之前,让您的功能分支从最新的master 分支出来。你可以做一个git fetch <remote_name> 然后做这个 -

git checkout -b <feature_branch> <remote_name>/master

或者更好的是,将远程 master 合并到本地 master 中,然后从本地 master 创建功能分支。

这将确保您是在您的开发服务器上使用最新的master 创建的。

当您无法推送到开发服务器时,您可以执行git pull,它将获取并合并最新的master,以确保您的任何同事的工作都包含在您的工作中。完成此操作后,您将不会在推送代码时遇到任何问题。

【讨论】:

  • 太棒了!谢谢解释!
  • 抱歉不知道怎么做。进行了搜索。
猜你喜欢
  • 2011-06-27
  • 1970-01-01
  • 2015-08-16
  • 2014-06-11
  • 1970-01-01
  • 2017-03-03
  • 2019-11-08
  • 1970-01-01
  • 2019-10-31
相关资源
最近更新 更多