我使用的是Git 1.7.4.1。

我想从存储库中获得我的代码的最新版本,但我得到错误:

$ git pull
….
M   selenium/ant/build.properties
….
M   selenium/scripts/linux/get_latest_updates.sh
M   selenium/scripts/windows/start-selenium.bat
Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>' as appropriate to mark resolution, or use 'git commit -a'.

我已经删除了工具抱怨的文件的本地副本,但我仍然得到错误。

如何从远程存储库签出最新版本?


当前回答

如果上面的命令不能帮助你使用这个方法:

转到你有Fork的git存档 单击“设置”。>向下滚动,单击“删除此存储库” 确认删除 再次Fork,并重新输入git克隆<url_git> 您已经有了最新的版本

其他回答

通过运行这个命令,你会得到最新的标签,通常是你项目的版本:

git describe --abbrev=0 --tags

如果你使用Git GUI,首先获取然后合并。

通过远程菜单获取>>获取>>来源。 通过合并菜单>>合并本地。

出现以下对话框。

选择跟踪分支单选按钮(也是默认选择),让黄色框空,按合并,这应该更新文件。

在做这些步骤之前,我已经恢复了一些局部更改,因为我想无论如何都要丢弃这些更改,这样我就不必在以后通过合并来消除。

如果上面的命令不能帮助你使用这个方法:

转到你有Fork的git存档 单击“设置”。>向下滚动,单击“删除此存储库” 确认删除 再次Fork,并重新输入git克隆<url_git> 您已经有了最新的版本

如果你只是想扔掉你工作文件夹里的所有东西(例如失败或流产的合并结果),并恢复到上一次干净的提交,做一个git重置——很难。

案例1:不要关心局部变化

解决方案1:获取最新的代码并重置代码 Git获取来源 Git重置-hard origin/[tag/branch/commit-id: master] 解决方法2:删除文件夹后重新克隆 Rm -rf [project_folder] Git克隆[remote_repo]

案例2:关注局部变化

Solution 1: no conflicts with new-online version git fetch origin git status will report something like: Your branch is behind 'origin/master' by 1 commit, and can be fast-forwarded. Then get the latest version git pull Solution 2: conflicts with new-online version git fetch origin git status will report something like: error: Your local changes to the following files would be overwritten by merge: file_name Please, commit your changes or stash them before you can merge. Aborting Commit your local changes git add . git commit -m ‘Commit msg’ Try to get the changes (will fail) git pull will report something like: Pull is not possible because you have unmerged files. Please, fix them up in the work tree, and then use 'git add/rm <file>' as appropriate to mark resolution, or use 'git commit -a'. Open the conflict file and fix the conflict. Then: git add . git commit -m ‘Fix conflicts’ git pull will report something like: Already up-to-date.

更多信息: 我如何使用'git重置-硬头'恢复到以前的提交?