【发布时间】:2014-04-23 19:41:26
【问题描述】:
我有一个文件,version.txt 和其他文件。我更改了其他文件,但没有触及 version.txt。
所以,我尝试推送一个提交,但看到了 Remote Heads 错误。 (有一个变更集修改了versions.txt 文件)
我先是hg pull,然后是hg update。
错误是:abort: crosses branches (merge branches or use --clean to discard changes)
然后我尝试了hg merge:abort: outstanding uncommitted changes (use 'hg status' to list changes)
但我不明白,为什么如果versions.txt不是我修改的,为什么不能合并。
这是我将要做的很多事情,即开发和合并,以保持与主开发存储库的内联。我该如何解决这个问题?
HG 状态:
M printbox/web/printbox/controllers/ct_adm_colas.php
M printbox/web/printbox/controllers/ct_adm_jobs.php
M printbox/web/printbox/controllers/ct_form_configurar_cola.php
M printbox/web/printbox/core/MY_Controller.php
M printbox/web/printbox/css/estilos.css
M printbox/web/printbox/js/js_tablas_colas-jobs_ajax.js
M printbox/web/printbox/models/md_cola.php
M printbox/web/printbox/models/md_job.php
M printbox/web/printbox/views/vw_tabla_colas.php
M printbox/web/printbox/views/vw_tabla_jobs.php
A printbox/web/printbox/core/MY_Model.php
? .idea/.name
? .idea/encodings.xml
? .idea/misc.xml
? .idea/modules.xml
? .idea/printboxweb.iml
? .idea/scopes/scope_settings.xml
? .idea/vcs.xml
? .idea/workspace.xml
EIDT:在遵循建议的修复之前和之后,图表日志如下所示:
o changeset: 19:e21fa7b131b0
| tag: tip
| parent: 17:54f59f253460
| user: JCV
| date: Tue Apr 22 12:33:36 2014 -0300
| summary: # Modificar nombre de producto para version
|
| @ changeset: 18:a03eaad764cd
|/ user: Jorge S <js@fusiondev.com.ar>
| date: Wed Apr 23 16:28:01 2014 -0300
| summary: Eliminar método que no se utiliza.
|
o changeset: 17:54f59f253460
| user: Jorge S <js@fusiondev.com.ar>
| date: Mon Apr 21 17:25:23 2014 -0300
| summary: Incluir SWHelper en Printbox.php
|
@ changeset: 21:1698791a9310
|\ tag: tip
| | parent: 20:3bfa1251da1b
| | parent: 19:e21fa7b131b0
| | user: Jorge S <js@fusiondev.c
| | date: Thu Apr 24 13:59:25 2014 -0300
| | summary: Merge
| |
| o changeset: 20:3bfa1251da1b
| | parent: 18:a03eaad764cd
| | user: Jorge S <js@fusiondev.c
| | date: Thu Apr 24 13:57:23 2014 -0300
| | summary: Commit de archivos
| |
o | changeset: 19:e21fa7b131b0
| | parent: 17:54f59f253460
| | user: JCV
| | date: Tue Apr 22 12:33:36 2014 -0300
| | summary: # Modificar nombre de producto
| |
| o changeset: 18:a03eaad764cd
|/ user: Jorge S <js@fusiondev.c
| date: Wed Apr 23 16:28:01 2014 -0300
| summary: Eliminar método que no se utili
|
o changeset: 17:54f59f253460
| user: Jorge S <js@fusiondev.com
| date: Mon Apr 21 17:25:23 2014 -0300
| summary: Incluir SWHelper en Printbox.php
【问题讨论】:
-
做一个
hg status,是否列出了任何文件,除了可能带有问号的文件? -
@LasseV.Karlsen 我更新了
-
您在本地有未提交的更改,这就是 Mercurial 抱怨的原因。如果您决定更新到不同的变更集,Mercurial 将尝试将您本地未提交的更改与您的工作文件夹父级和您要更新到的变更集之间所做的任何事情“合并”。合并不能对未提交的更改进行,因为合并的行为会修改文件而使它们未提交。那么......这些文件应该被提交吗?如果是这样,那么您应该这样做,然后您可以更新和/或合并。
-
@LasseV.Karlsen 是对的。如果您启用了扩展程序,您还可以搁置本地更改,以便稍后恢复。
-
@LasseV.Karlsen 但我不明白为什么我必须合并。它不是一个分支,它是主线。要求一个愚蠢的解释是不是太过分了?我认为 UPDATE 会带来在 HEAD 变更集中修改的文件。如果没有问题,那么我的本地仓库(我一直在工作的地方)将使用最新的服务器版本进行更新。必须注意的是,在这种情况下,我没有修改远程变更集中的文件