【发布时间】:2018-07-09 21:37:15
【问题描述】:
我自己在做一个项目,遇到了合并冲突错误。这就是发生的事情。
- 首先,我为项目创建了一个存储库
- 我一直在单独更新 repo,没有任何合作者
- 我一直在通过 git add 更新更改。 -> git commit -> git push origin master。
- 只有一个分支,主人。 (origin/master.) 该项目仅存在于存储库和我的机器中。
几天前,我尝试进行常规更新,但遇到了合并冲突错误。我认为这是因为我已将 readme.md 和其他内容添加到存储库(在 github 中)并在本地提交了一些更改,但没有将其推送到存储库。仍然不清楚为什么会这样。
我想要做的是,机器中的代码(本地更改)是最新的。我不关心回购中发生的变化,因为它已经过时了。 只想使用本地提交的更改更新存储库。
我正在对此进行研究,似乎 git rebase 或 git pull --rebase 是可能的选择。在这种情况下,哪一个更适合我?那些甚至适合我吗?
谢谢
【问题讨论】:
-
如果你只是想用你在本地拥有的更新存储库,并准备丢失在服务器上所做的更改,而不是在本地,你需要做的是推送,而不是拉取。
git push --force。我已经警告过你了。希望您仔细阅读此评论。 -
@JBNizet 谢谢你的回复。是的,服务器中所做的更改很小,可以丢失。我想我可以使用
git push --force。但是我也想知道当我需要保留在服务器中所做的更改时应该怎么做,并在发生合并冲突时更新我的本地更改。对我的情况来说并不完全必要,但知道会非常有用。 -
我会 git fetch,然后 git rebase -i upstream/master。但最重要的是,我不会使用github直接在服务器上进行更改,也不会直接在master上工作,而是在分支中工作。