Натискання порожніх зобов’язань віддалено


242

Я перемістив одну комісію на віддалений, але тепер зрозумів, що повідомлення про фіксацію є невірним. Я хотів би змінити повідомлення про фіксацію, але AFAIK це неможливо. Тому я вирішив створити порожній фіксатор з правильним повідомленням:

git commit --allow-empty

Чи є недоліки / наслідки натискання порожніх комітетів? Чи є якась проблема, з якою я можу зіткнутися в майбутньому через цю порожню прихильність ??


1
Перевірте подібне питання stackoverflow.com/questions/6218199 / ...
Montaro

Відповіді:


80

Ви не зіткнетесь з будь-якими страшними наслідками, просто історія буде виглядати дещо заплутаною.

Ви можете змінити повідомлення про фіксацію, виконавши

git commit --amend
git push --force-with-lease # (as opposed to --force, it doesn't overwrite others' work)

Але це перекриє віддалену історію з вашою, це означає, що якщо хтось тим часом витягнув це репо, ця людина буде дуже злий на вас ...

Просто зробіть це, якщо ви єдина людина, яка має доступ до репо.


5
Так, тому я віддав перевагу натисканням на порожній
фіксатор

4
@mrutyunjay, якщо є шанс, що інші люди витягнули репо, тоді так, я думаю, це приємніший варіант.
Габріеле Петронелла

1
Ви не зіткнетесь із будь-яким жахливим наслідком, просто історія буде виглядати дещо заплутаною - який жахливий наслідок! ;-)
Алоїс Магдал

3
Віддайте перевагу --force-with-leaseуникнути втрати роботи співробітників.
Кензо

22

натискання комітетів, будь то пусте чи ні, спричиняє спрацьовування можливих гачок для git. Це може нічого не робити або мати наслідки руйнування у світі.


9
Це недооцінене спостереження. Так, порожні комітети можуть бути кращими за внесення змін, що надсилаються, але не можна вважати, що вони не мають побічних ефектів, якщо на місці можуть бути гачки.
wintermute92

18

Чи є якісь недоліки / наслідки відштовхування порожніх комісій?

Окрім надзвичайної плутанини, хтось може зрозуміти, чому на майстер, як насправді, є купа комітетів, які не містять вмісту.

Ви можете змінити команду, яку ви натиснули на віддалений, але sha1 комітету (в основному це ідентифікаційний номер) назавжди зміниться, що змінює дерево джерела. Тоді вам доведеться зробити git push -fназад до віддаленого.


15

Поки ви чітко посилаєтесь на іншу комісію з порожнього комітету, це повинно бути добре. Щось на зразок:

Commit message errata for [commit sha1]

[new commit message]

Як зазначали інші, це часто бажано змусити натискати на виправлену комісію.


12
 $ git commit --allow-empty -m "Trigger Build"

2
Хоча цей код може вирішити питання, включаючи пояснення, як і чому це вирішує проблему, справді допоможе покращити якість вашої публікації та, ймовірно, призведе до збільшення кількості голосів. Пам'ятайте, що ви відповідаєте на запитання читачів у майбутньому, а не лише про людину, яка зараз задає питання. Будь ласка, відредагуйте свою відповідь, щоб додати пояснення та вказати, які обмеження та припущення застосовуються. З огляду
подвійний звуковий сигнал

-1

Як що до цього;

 git commit --allow-empty-message -m ''

Ви просто видалили повідомлення, і це ще більше погіршиться, якщо комісія буде порожньою, має бути принаймні повідомлення, чому.
Ерік Бішард
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.