- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
当我尝试在终端中 pull 入我的项目目录时,我看到以下错误:
harsukh@harsukh-desktop:~/Sites/branch1$ git pull origin master
U app/config/app.php
U app/config/database.php
U app/routes.php
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'.
为什么 git 说 “Pull is not possible because you have unmerged files”
,我该如何解决?
最佳答案
当前发生的情况是,您有一组特定的文件,您之前曾尝试 merge 这些文件,但它们引发了 merge 冲突。理想情况下,如果遇到 merge 冲突,他们应该手动解决它们,并使用 git add file.name && git commit -m "removed merge conflicts"
提交更改。现在,另一个用户更新了他们存储库中的相关文件,并将他们的更改推送到公共(public)上游存储库。
碰巧,你的 merge 冲突(可能)最后一次提交没有解决,所以你的文件没有正确 merge ,因此 U
(unmerged
) 文件的标志。所以现在,当你执行 git pull
时,git 会抛出错误,因为你有某个版本的文件,它没有被正确解析。
要解决此问题,您必须先解决有问题的 merge 冲突,然后添加并提交更改,然后才能执行 git pull
。
# Note: commands below in format `CUURENT_WORKING_DIRECTORY $ command params`
Desktop $ cd test
首先,让我们创建存储库结构
test $ mkdir repo && cd repo && git init && touch file && git add file && git commit -m "msg"
repo $ cd .. && git clone repo repo_clone && cd repo_clone
repo_clone $ echo "text2" >> file && git add file && git commit -m "msg" && cd ../repo
repo $ echo "text1" >> file && git add file && git commit -m "msg" && cd ../repo_clone
现在我们在 repo_clone 中,如果你执行 git pull
,它会引发冲突
repo_clone $ git pull origin master
remote: Counting objects: 5, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From /home/anshulgoyal/Desktop/test/test/repo
* branch master -> FETCH_HEAD
24d5b2e..1a1aa70 master -> origin/master
Auto-merging file
CONFLICT (content): Merge conflict in file
Automatic merge failed; fix conflicts and then commit the result.
如果我们忽略克隆中的冲突,现在在原始仓库中进行更多提交,
repo_clone $ cd ../repo
repo $ echo "text1" >> file && git add file && git commit -m "msg" && cd ../repo_clone
然后我们执行git pull
,我们得到
repo_clone $ git pull
U file
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'.
请注意,文件
现在处于未 merge 状态,如果我们执行 git status
,我们可以清楚地看到相同的情况:
repo_clone $ git status
On branch master
Your branch and 'origin/master' have diverged,
and have 1 and 1 different commit each, respectively.
(use "git pull" to merge the remote branch into yours)
You have unmerged paths.
(fix conflicts and run "git commit")
Unmerged paths:
(use "git add <file>..." to mark resolution)
both modified: file
因此,要解决这个问题,我们首先需要解决我们之前忽略的 merge 冲突
repo_clone $ vi file
并将其内容设置为
text2
text1
text1
然后添加它并提交更改
repo_clone $ git add file && git commit -m "resolved merge conflicts"
[master 39c3ba1] resolved merge conflicts
关于git - 为什么 git 说 "Pull is not possible because you have unmerged files"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26376832/
我正在尝试与一个分支 merge ,这是我得到的错误: BUG: There are unmerged index entries: BUG: 2 src/assets/svg/arrow-black
我正在使用 php-git 客户端在我的 php 脚本中提取分支。 每当我从 master checkout 到 test 时,我都会收到以下错误。 error: Pull is not possib
我正在使用 openpyxl 并通过 goolging 找到了一些关于在 xlsx 工作簿中取消合并单元格的代码。 我的代码可以正常工作,但发现它并没有一次性删除所有合并的单元格。我将它设置为使用 w
我想从分支“B”中“取消 merge ”分支“A”。 在上图中,这意味着简单地删除提交“095195e”和“A”之间的虚线。 我不想使用还原,因为稍后我可能会将分支“B” merge 回分支“A”,我
我有以下 git status,我需要摆脱 pluginA 和 pluginB: # Changed but not updated: # (use "git add ..." to update
当我试图在 git 中恢复一个特定的提交时,我得到了这个错误: $ git revert aaaf93201a28a57d540d633b1b723b8e513a47ederror: Revertin
做的时候: git merge some-branch 我明白了 BUG: There are unmerged index entries: BUG: 3 docfatal: Bug in merg
我做了一个简单的例子来文本一些 GIT 函数。存储库中只有一个文本文件: 1 添加并提交更改 然后改了txt。归档到: 1 2 添加并提交更改 Git 日志给出如下结果: commit 00e5921
我将分支 dog merge 到 animal 中。当我提交时,我得到以下信息: Unmerged paths: (use "git reset HEAD ..." to unstage) (use
我在 Jasper Reports 中导出 Excel 时遇到问题。我的报告的输出 Excel 文件包含不需要的合并单元格,具体取决于我为每个报告使用的报告模板。我在第一个 Excel 工作表中显示报
我有时会向上游存储库贡献 pull 请求。有人将我的 pr 应用到 master 并关闭它。然后 github 说“关闭未 merge 提交”。为什么? 我想弄清楚的是,我在创建 pr 的分支上所做的
安装新的 CocoaPod 时,出现以下错误。 $ pod install Analyzing dependencies [!] Pod::Executable pull A AFHARchive
我在编辑代码之前忘记了 git pull;当我提交新代码并尝试推送时,出现错误“无法推送”。 那时我做了一个git pull,它突出显示了一些有冲突的文件。我删除了冲突,但我不知道从这里可以做什么。
我试图理解这个过程,并从 git 功能的角度以及开源开发 POV 的角度来理解这里发生了什么。 This PR gets竖起大拇指和 LGTM 评论,然后以“未 merge 提交关闭”结束。我提供的提
我正在将分支 B merge 到分支 A: $ git checkout A $ git merge B 我得到错误: # Unmerged paths: # (use "git add ..."
当我尝试在终端中 pull 入我的项目目录时,我看到以下错误: harsukh@harsukh-desktop:~/Sites/branch1$ git pull origin master U ap
我正在使用 Xamarin Studio 在 iMac 上开发 iOS 应用程序。该解决方案托管在 Github 上。我尝试使用服务器 (github) 版本更新我的解决方案,但遇到了一些错误。 要拉
我是一名优秀的程序员,十分优秀!