0

所以这就是发生的事情:

  • 我有一个本地仓库供开发人员使用
  • 推送到原始主机
  • 从我的测试环境中,我总是git pull更新

现在当然我在测试环境中有不同的配置文件。我在测试环境中本地更改了我的配置文件。在匆忙的时刻(...)我在合并发生冲突后提交了我的本地更改。现在应用程序运行良好,但 git 告诉我

您的分支领先于 'origin/master' 13 次提交。

我明白,因为我提交了我的本地更改 - 我不想推动掌握。解决此问题的正确方法是什么?我想要:

  • 拥有配置文件的本地副本
  • 不想弄乱测试环境中基本正确的配置
  • 摆脱“你的分支在前面”的消息
  • 保持我的主人和我的测试环境清洁

谢谢!

4

2 回答 2

1

你想丢弃你在 dev 上的本地提交

git push -f . origin/master:master

或者

git reset --hard origin/master

如果你已经在那个分支上。

处理配置转换的最佳方法是使用涂抹/清洁脚本。它们在属性章节中的 progit.org/book 中进行了解释。您提交了一个无法正常工作的配置。依靠脚本将配置转换为每个环境所需的配置。

于 2012-10-31T18:44:28.760 回答
0

如果您只想更改最近的提交,这很容易。您暂存您想要进行的更改,然后修改您的最后一次提交。

在您的情况下,您可以将配置文件更改回您想要的方式,暂存它,然后提交修改。用于config.php您的配置文件,它看起来像:

$ git add config.php
$ git commit --amend

请参阅 Pro Git 的重写历史章节

于 2012-10-31T19:00:34.587 回答