4

我是 git 新手,仍然遇到很多麻烦。

说我在工作a.cpp。我修改了一些代码a.cpp。而且,该更改还没有准备好提交或推送。

紧接着,其他人也做出了改变a.cpp

在 SVN/CVS 中,签出要么是合并,要么是冲突。

我以为那git pull也是一样的。

但是,似乎git pull没有合并/冲突。这是正确的行为吗?

此外,git checkout只需简单地重写a.cpp,就会丢失我所有的更改。

有什么简单的方法可以提取最新版本并执行合并/冲突?

4

2 回答 2

5

在你拉之前,把你的更改藏起来。然后在拉取之后,您可以弹出隐藏的更改并将它们重新定位在最新的提交上。

首先存储所有更改

git stash

您可以通过运行来查看您的存储stash show。如果您之前没有存储任何东西,那么您现在应该看到一个存储。您现在可以在不覆盖更改的情况下进行拉取:

git pull

现在从存储中删除您的更改并将它们应用于当前签出的版本:

git stash pop
于 2013-03-13T00:34:36.203 回答
0

另一种方法是提交 NOT push。然后从远程变基。

于 2013-03-28T13:46:29.660 回答