Відповіді:
Рідко є вагомі причини для цього, але параметр - --allow-empty
порожні коміти (файли не змінені), на відміну від --allow-empty-message
порожніх повідомлень про фіксацію. Ви також можете прочитати більше, ввівши git help commit
або відвідавши онлайн-документацію .
У той час як деревооб'єкт (у якого є власний хеш) буде ідентичним, комісія насправді матиме інший хеш, оскільки він, ймовірно, матиме іншу часову позначку та повідомлення, і неодмінно матиме інший батьківський прихильність. Всі три з цих факторів інтегровані в git
алгоритм хешування об'єктів.
Там є кілька причин , ви можете зробити порожній ( з урахуванням деяких зауважень):
git
команд без генерування довільних змін (через Vaelus ).gitolite
(через Tatsh ).Інші стратегії додавання метаданих до дерева комісій включають:
git notes
пов’язати змінну ноту поверх існуючого непорушного коміту.commit --amend
якщо пульт не дозволяє силовий натискання. Таким чином, ви можете дозволити розробникам побачити важливе повідомлення, яке відповідає попередній комісії.
Якщо ви використовуєте таку систему, як gitversion, це має багато сенсу робити такі види фіксацій . У вас може виникнути комісія, спеціально для нахилу основної версії за допомогою + semver: main comment.
Можливо, в якості більш розумної альтернативи ви можете створити примітку з примітками (названий коміт з повідомленням). Дивіться git tag -a
варіант.
dev
форму гілки ,master
а потімfeat
відділення відразу відdev
, тоfeat
галузь виглядає виходити відmaster
галузі , як є ніяких відмінностей не вчинять наdev
гілки якоїfeat
гілка виходить. Порожня фіксація, коли ви вперше зробитеdev
філію, допомагає встановитиdev
гілку як власну безстроково стійку гілку незалежно відmaster
. Як правило, це корисно, коли ви використовуєте гілки як шари та створюєте два шари з одного комітету