我是 git 新手,仍然遇到很多麻烦。
说我在工作a.cpp
。我修改了一些代码a.cpp
。而且,该更改还没有准备好提交或推送。
紧接着,其他人也做出了改变a.cpp
。
在 SVN/CVS 中,签出要么是合并,要么是冲突。
我以为那git pull
也是一样的。
但是,似乎git pull
没有合并/冲突。这是正确的行为吗?
此外,git checkout
只需简单地重写a.cpp
,就会丢失我所有的更改。
有什么简单的方法可以提取最新版本并执行合并/冲突?
在你拉之前,把你的更改藏起来。然后在拉取之后,您可以弹出隐藏的更改并将它们重新定位在最新的提交上。
首先存储所有更改
git stash
您可以通过运行来查看您的存储stash show
。如果您之前没有存储任何东西,那么您现在应该看到一个存储。您现在可以在不覆盖更改的情况下进行拉取:
git pull
现在从存储中删除您的更改并将它们应用于当前签出的版本:
git stash pop
另一种方法是提交 NOT push。然后从远程变基。