我正在使用Git。我从远程仓库中取出了一个拉动并收到错误消息:
“请输入提交消息以解释此合并的原因 必要的,特别是如果它将更新的上游合并到主题中 分支“。
我尝试输入消息并按 Enter 但没有任何反应。
如何告诉Git / terminal我输入了我的消息?
我在OS X上使用终端。
答案 0 :(得分:874)
这不是Git错误消息,它是编辑器,因为git使用您的默认编辑器。
解决这个问题:
答案 1 :(得分:32)
实际上这不是错误!这意味着您应该输入一些消息来标记此合并。我的操作系统是Ubuntu 14.04。如果你使用相同的操作系统,你只需按照以下步骤操作:
输入一些消息
控制 C 0
输入文件名(例如“Merge_feature01”)并按 Enter
Ctrl X 退出
现在,如果你去.git,你会发现文件“Merge_feature01”,那实际上就是合并日志。
答案 2 :(得分:18)
这里 nice 用于您喜欢的编辑器的含义或者找到更多用户友好的。
根本问题是Git默认使用的编辑器对大多数人来说太不直观了:Vim。现在,不要误解我,我喜欢Vim,虽然你可以把时间放在一边(比如一个月)to learn Vim,并试着理解为什么有些人认为Vim是现存最伟大的编辑,那里是解决此问题的更快捷方法: - )
修复不是记住神秘的命令,就像在接受的答案中一样,而是配置Git以使用您喜欢和理解的编辑器!它就像配置这些选项中的任何一个一样简单
core.editor
(每个项目,或全局)VISUAL
或EDITOR
环境变量(这适用于其他程序)我将介绍几个热门编辑的第一个选项,但GitHub也有一个很好的guide on this for many editors。
直接from its docs,在终端输入:
git config --global core.editor "atom --wait"
Git通常会等待编辑器命令完成,但由于Atom立即分配到后台进程,除非你给它--wait
选项,否则这不会起作用。
出于与Atom案例相同的原因,您需要一个特殊的标志来向进程发出信号,表示它不应该分叉到后台:
git config --global core.editor "subl -n -w"
答案 3 :(得分:12)
Just Do,
CTRL + X
CTRL + C
它会要求你保存文件,按 Y ,然后你就完成了。
答案 4 :(得分:4)
相反,您可以git Ctrl Z 并重试提交,但这次在其后添加带引号的“-m”,然后它将提交而不提示你有那个页面。
答案 5 :(得分:2)
这里要求您提供一条与您的合并相关联的消息,以便将来参考为什么要进行此合并。
press "i"
on top above on #lines write your message
press "esc" button
write ":wq" (it will write in bottom automatically)
press enter
答案 6 :(得分:2)
由于您的本地存储库很少提交,git会尝试将您的遥控器合并到您的本地存储库。这可以通过合并来处理,但在您的情况下,也许您正在寻找rebase,即将您的提交添加到顶部。您可以使用
执行此操作 git rebase
或git pull --rebase
这是一篇很好的文章,解释了git pull
& git pull --rebase
。
https://www.derekgourlay.com/blog/git-when-to-merge-vs-when-to-rebase/
答案 7 :(得分:0)
如何通过合并在android studio终端中添加消息。这是针对Mac用户的。
合并全部完成,然后可以继续进行操作,然后再拉到本地或创建新分支。
答案 8 :(得分:0)
我发现错误是因为我是git新手 您必须检查输入的语法是否正确
我写错了git commit
并遇到相同的错误
使用
git commit -m 'some comment'
,您将不会看到带有
的页面答案 9 :(得分:0)
就我而言,合并后我收到了此消息。 决定:在此类型之后,按esc键。
答案 10 :(得分:0)
当我使用 GIT bash 将 master 分支合并到我的特性分支时,我遇到了同样的问题。我按照以下步骤解决了这个问题。