<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>33452</bug_id>
          
          <creation_ts>2017-05-05 12:30:12 +0300</creation_ts>
          <short_desc>gear-commit - выход без записи равно прекращению коммита</short_desc>
          <delta_ts>2018-03-07 07:33:56 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>gear</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://git.altlinux.org/people/ldv/packages/gear.git?p=gear.git;a=commit;h=d002f5f8e87d4380d474bd47117ddb571100106e</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>patch</keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anton Farygin">rider</reporter>
          <assigned_to name="Dmitry V. Levin">ldv</assigned_to>
          <cc>glebfm</cc>
    
    <cc>ldv</cc>
    
    <cc>legion</cc>
    
    <cc>placeholder</cc>
    
    <cc>rider</cc>
    
    <cc>sotor</cc>
    
    <cc>vseleznv</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>163573</commentid>
    <comment_count>0</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-05-05 12:30:12 +0300</bug_when>
    <thetext>было бы неплохо сделать поведение аналогичное git commit - т.е. - выход без записи изменений равноценен прекращению commit&apos;а.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166653</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-10-28 03:09:26 +0300</bug_when>
    <thetext>В отличие от git commit, gear-commit генерит commit message по-умолчанию,
которое я обычно оставляю без редактирования.

Сомневаюсь, что предлагаемое изменение поведеня gear-commit было бы удобнее нынешнего.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166679</commentid>
    <comment_count>2</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-10-28 08:13:42 +0300</bug_when>
    <thetext>Конечно же удобнее - выход без записи по сути отмена коммита.
Ну мало ли что, передумал.
а так приходит откатывать коммит.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166698</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2017-10-28 19:38:39 +0300</bug_when>
    <thetext>(В ответ на комментарий №2)
&gt; Ну мало ли что, передумал.
&gt; а так приходит откатывать коммит.

Если ты передумал после того как запустил gear-commit, то достаточно просто удалить текст, сохранить и выйти и тогда коммита не будет. И не нужно ничего откатывать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166708</commentid>
    <comment_count>4</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-10-29 03:30:51 +0300</bug_when>
    <thetext>Вообще gear-commit был придуман в основном для того, чтобы commit message формировался автоматически, поэтому его, как правило, никто не редактирует и не записывает.

На самом деле мне было бы удобнее, если бы, наоборот, можно было бы сказать
git config --global gear.commit.edit no
и получить таким образом --no-edit без необходимости это явно указывать.

И ещё, я думаю что было бы правильно, если бы --no-edit, если уж этот параметр так или иначе был указан, передавался бы git commit&apos;у, как сейчас передаётся --edit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166717</commentid>
    <comment_count>5</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2017-10-29 08:13:04 +0300</bug_when>
    <thetext>Я опять о том, что поведение git commit и gear-commit было бы здорово сделать одинаковым.

Выход из редактирования git сommit без сохранения означает commit cancel.
Выход из gear-commit без сохранение приводит к коммиту.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166750</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2017-10-30 13:39:54 +0300</bug_when>
    <thetext>(В ответ на комментарий №4)
&gt; Вообще gear-commit был придуман в основном для того, чтобы commit message
&gt; формировался автоматически, поэтому его, как правило, никто не редактирует и не
&gt; записывает.
&gt; 
&gt; На самом деле мне было бы удобнее, если бы, наоборот, можно было бы сказать
&gt; git config --global gear.commit.edit no
&gt; и получить таким образом --no-edit без необходимости это явно указывать.
&gt; 
&gt; И ещё, я думаю что было бы правильно, если бы --no-edit, если уж этот параметр
&gt; так или иначе был указан, передавался бы git commit&apos;у, как сейчас передаётся
&gt; --edit.

А это уже похоже на нормальный такой featue request! )))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166751</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2017-10-30 13:42:38 +0300</bug_when>
    <thetext>(В ответ на комментарий №5)
&gt; Я опять о том, что поведение git commit и gear-commit было бы здорово сделать
&gt; одинаковым.
&gt; 
&gt; Выход из редактирования git сommit без сохранения означает commit cancel.
&gt; Выход из gear-commit без сохранение приводит к коммиту.

Можно попробовать сделать это переметризируемым... gear.commit.save=true (более правильное название параметра приветствуется) и по этому параметру требовать сохраннения.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166755</commentid>
    <comment_count>8</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-10-30 14:04:48 +0300</bug_when>
    <thetext>(In reply to comment #7)
&gt; (В ответ на комментарий №5)
&gt; &gt; Я опять о том, что поведение git commit и gear-commit было бы здорово сделать
&gt; &gt; одинаковым.
&gt; &gt; 
&gt; &gt; Выход из редактирования git сommit без сохранения означает commit cancel.
&gt; &gt; Выход из gear-commit без сохранение приводит к коммиту.
&gt; 
&gt; Можно попробовать сделать это переметризируемым... gear.commit.save=true (более
&gt; правильное название параметра приветствуется) и по этому параметру требовать
&gt; сохраннения.

Насколько я помню, git commit делает cancel в случае, если commit message пустой, а не в случае &quot;без сохранения&quot;.

Поэтому реализовать gear.commit.require_saved_message=true будет сложнее, чем кажется.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>168154</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2017-12-24 04:01:11 +0300</bug_when>
    <thetext>Попробуйте пожалуйста:

http://git.altlinux.org/people/legion/packages/gear.git?p=gear.git;a=commitdiff;h=1d77f55753e2df5775dc88bacedcaf4ed7388069</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>168198</commentid>
    <comment_count>10</comment_count>
    <who name="Sergey Novikov">sotor</who>
    <bug_when>2017-12-25 15:27:09 +0300</bug_when>
    <thetext>Попробовал поведение следующее:

1. gear.commit.edit-message true
gear.commit.require-message-save true
Вызывается редактор с автоматическим commit message:
&lt;gear-commit message template, please remove this line and save to commit&gt;
Если сообщение отредактировать и сохранить, делается коммит.
Если не редактировать/не сохранять, коммит отменяется

2. gear.commit.edit-message false
gear.commit.require-message-save true
Поведение аналогично пункту 1.

3. gear.commit.edit-message true
gear.commit.require-message-save false
Вызывает редактор с сообщением аналогично аналогично параметру --edit
Коммит делается в любом случае</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169484</commentid>
    <comment_count>11</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2018-03-07 01:41:32 +0300</bug_when>
    <thetext>gear-2.2.0-alt1 -&gt; sisyphus:

Tue Mar 06 2018 Dmitry V. Levin &lt;ldv@altlinux&gt; 2.2.0-alt1
- gear-srpmimport: honor RPMFILE_SPECFILE.
- gear-changelog (by Alexey Gladkov):
  + added --no-credits option to omit credits;
  + added --no-header option to omit changelog header;
  + added --since-date option to show commits since a specified date.
- gear-commit (by Alexey Gladkov; closes: #33452):
  + added gear.commit.edit-message config parameter: when set to true,
    an editor is invoked for further editing of the generated commit
    message;
  + added gear.commit.require-message-save config parameter: when set
    to true, the commit is aborted if the generated commit message
    has not been edited by the user.
- Updated bash completion for gear (by Alexey Gladkov).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169492</commentid>
    <comment_count>12</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2018-03-07 07:33:56 +0300</bug_when>
    <thetext>Спасибо, работает.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>