Сделайте так, чтобы Mercurial ничего не фиксировал, если имена файлов не указаны явно - PullRequest
2 голосов
/ 05 сентября 2011

в соответствии с сообщением справки по фиксации Mercurial:

If a list of files is omitted, all changes reported by "hg status" will be
committed.

Есть ли простой способ изменить это поведение?

Я бы хотел, чтобы Mercurial не вносил никаких изменений, если только файлы не указаны явно.

edit

Я нахожусь в Linux и использую командную строку.

Ответы [ 2 ]

5 голосов
/ 05 сентября 2011

Это, кажется, делает трюк:

$ hg commit -X *  
nothing changed

Он ничего не делает, потому что все файлы исключены, но если вы дадите какие-либо файлы, они будут включены.

Вы можете использовать псевдоним:

[псевдоним]
xcommit = commit -X *

, то:

$ hg status
M a
M b
$ hg xcommit -m 'no files specified'
nothing changed
$ hg xcommit -m 'picking a' a
$ hg status
M b

Лично я не хотел бы привыкать к этому типу рабочего процесса. Обычно это так же просто:

  • работают небольшими порциями, поэтому ваши изменения отражают один набор изменений
  • для тех случаев, когда вы забываете и занимаетесь программированием, используйте что-то вроде hg record
  • для действительно немногих случаев, когда вышеперечисленные два не подходят, используйте -I/-X для этого одного коммита
2 голосов
/ 05 сентября 2011

если вы используете графический интерфейс, например, tortoiseHg, вы можете выбрать файлы, которые нужно зафиксировать. http://tortoisehg.bitbucket.io/

...