Russian Qt Forum

Qt => Общие вопросы => Тема начата: vanger от Апрель 25, 2012, 04:42



Название: Ошибка при фиксации(commit)
Отправлено: vanger от Апрель 25, 2012, 04:42
Добрый день.

Использую для контроля версий Mercurial. Захотел, чтобы работать с ним прямо из Qt Creator. Столкнулся при этом со следующей проблемой. При коммите изменений выдаётся следующее сообщение об ошибке:

(http://i34.fastpic.ru/big/2012/0425/00/f5c281c615004e3007e17e142007f100.png).

С чём это может быть связано(место, понятное дело, есть)? Пролетарское чутьё подсказывает, что причина может быть в наличии пробелов в указанном пути("Documents and Settings"). Если это так, то как перенастроить папку записи(и что он, вообще, писать туда собрался? к директории проекта указанный путь не имеет отношения)?

Qt Creator 2.4.1
Mercurial 2.1.2


Название: Re: Ошибка при фиксации(commit)
Отправлено: Lagovas от Август 15, 2012, 01:14
Точно такая же трабла, кто то знает как решить без костылей? Бо нашел вот такой вот костыль:
Цитировать
Reason:
 - The problem QTCreator runs hg.exe from the folder where you launch QTCreator and of course there is no .hg folder in QTCreator program folder.
Solution:
 - Launch QTCreator from folder where you store the repository (folder which continas .hg folder)
 - For windows, create a shortcut for QTCreator and in property of that shortcut, choose startIn the folder which contain .hg folder


Название: Re: Ошибка при фиксации(commit)
Отправлено: Bepec от Август 15, 2012, 06:52
Смени переменную temp, определённую для текущего пользователя.

Компьютер-свойства-дополнительные параметры-переменные среды-temp-2 раза тыкнуть-сменить на иную папку, удовлетворяющую QTCreator.

Нне?


Название: Re: Ошибка при фиксации(commit)
Отправлено: Lagovas от Август 15, 2012, 09:48
Как узнать какая будет его удовлетворять? Он же не пишет какая надо. Сейчас D:/TemporaryFiles (система на C:/). QtCreator там спокойно создает свои временные файлы, .msg файлы тоже создаются, но потом удаляются после невыполненного коммита.


Название: Re: Ошибка при фиксации(commit)
Отправлено: Bepec от Август 15, 2012, 09:51
У тебя же ясно пишет, что использует путь в каталог Temp текущего пользователя. Значит он его берёт из системы, или запомнил ранее.
Вывод - либо ты его не перенаправил (на всякий случай скажу - есть переменная окружения temp для системы, есть для пользователя, и они - разныеее...),
либо у тебя прописано это в git'e или QtCreator'e.

PS из ниоткуда взять эту папку он не может - ищи откуда берёт.


Название: Re: Ошибка при фиксации(commit)
Отправлено: Lagovas от Август 15, 2012, 10:15
Я знаю откуда берется папка и где ее указывать. Вы скажите какую ему нужно? У меня для пользователя и для системы стоит одна папка. Переменные Temp и Tmp одинаковы для пользователя и системы.
Но ок, создал для пользователя отдельную папку, всеравно та же ошибка. Или вы про то, что бы указать путь туда, куда советуется в моем посте (в папку где .hg папка)? Ну это на проект тогда нужно указывать, и тогда каждый раз меняя проект, нужно ставить Temp на этот проект? Костыль... спрашивал как некостыльно решить...


Название: Re: Ошибка при фиксации(commit)
Отправлено: Bepec от Август 15, 2012, 12:06
Вы не понимаете моих слов видимо :)

Если вы поменяли все пути переменных сред, но он всё равно выдаёт эту вот ошибку, значит этот путь хранится в программах и, по всей видимости, был взят по умолчанию.

Вам тогда необходимо посмотреть настройки ваших программ (как то mercurial/QtCreator) и установить нужный вам путь.

PS проще выражаясь - перестанови все проги, смотри все галочки и настройки.



Название: Re: Ошибка при фиксации(commit)
Отправлено: Lagovas от Август 15, 2012, 12:18
После смены пути, qtcreator начал жаловаться на новый путь, значит трабла в mercurial я так понял... ок, щас его переставлю.


Название: Re: Ошибка при фиксации(commit)
Отправлено: Lagovas от Август 15, 2012, 13:06
Удалил mercurial, проставил себе путь к Temp для пользователя (совпадает с системным), установил заново меркуриал. Трабла та же.


Название: Re: Ошибка при фиксации(commit)
Отправлено: Bepec от Август 15, 2012, 13:21
Работал бы с ним - ответил бы конкретнее. А так - дерзай.


Название: Re: Ошибка при фиксации(commit)
Отправлено: Alex Custov от Август 15, 2012, 16:05
а пользователь туда может писать вообще? Может у него прав не хватает. Сделай
Код:
echo > %TEMP%/file.xxx
от пользователя.


Название: Re: Ошибка при фиксации(commit)
Отправлено: Lagovas от Август 15, 2012, 16:09
Все ок, файл создался.
Опять же, файл blabla.msg создается от qtcreator. Но мб он пустой, не помню уже. После неудачи, когда закрываешь окно коммита, он удаляется креатором тоже нормально.