Действительно ли возможно применить фиксацию ко всем ответвлениям в мерзавце?

У меня есть чувство, что я спрашиваю что-то, что не может быть сделано в мерзавце, но я мог бы также спросить. Есть ли какой-либо способ, которым я могу внести одно изменение и передать его всем ответвлениям? Например, предположите, что я хочу внести изменение в свой файл АВТОРОВ или ФАЙЛ ЛИЦЕНЗИИ. Я знаю, что могу передать изменение в одном ответвлении и затем избирательно подойти к выбору его к каждому ответвлению индивидуально. Но есть ли более легкий способ сделать это?

6
задан Jason Baker 30 January 2010 в 03:53
поделиться

2 ответа

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

Если они долговечные филиалы, вы захотите, чтобы объединить в них обновленную ветку, либо вишневый коммит.

4
ответ дан 17 December 2019 в 00:09
поделиться

Возможно, есть ловкий способ сделать это, но я этого не знаю. Я сделал это:

  opts = OptionParser.new
  ...
  opts.on_tail("-h", "--help",
               "Show this message") do
    puts opts
    exit
  end
  begin      
    opts.parse!(argv)
  rescue OptionParser::InvalidOption => e
    puts e
    puts opts
    exit(1)
  end
-121--3950640-

Либо вы заботитесь о возможности недействительного возвращаемого значения, либо нет. Большинство ответов до сих пор находятся в середине, улавливая некоторые последовательности помимо «0» и «1», возможно, рационализируя о том, как они должны быть преобразованы, возможно, бросая исключение. Недопустимые входные данные не могут привести к допустимым выводам, поэтому не следует пытаться их принять.

Если вас не волнуют недопустимые возвраты, используйте s [0] = = '1' . Это очень просто и очевидно. Если вы должны оправдать его допустимость для кого-либо, скажем, что он преобразует неверный ввод в false, и пустой ряд, , вероятно, будетдинственным \0 в вашей реализации STL, так что он достаточно стабилен. s = = «1» также хорош, но s! = «0» кажется мне тупым и делает недействительным = > true.

Если вы заботитесь об ошибках (и, вероятно, должны), используйте

if ( s.size() != 1
 || s[0] < '0' || s[0] > '1' ) throw input_exception();
b = ( s[0] == '1' );

Это ловит все ошибки, это также совершенно очевидно и просто для всех, кто знает smidgen C, и ничто не будет работать быстрее.

-121--1107291-

Что может помочь вам - Тематические ветви. Прочитайте это и это сообщение блога.

3
ответ дан 17 December 2019 в 00:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: