невидимый git meta commit - PullRequest
       1

невидимый git meta commit

4 голосов
/ 15 марта 2012

У меня вопрос, причины такого описаны в рассказе. В интересах уважения времени читателя, часть истории может быть пропущена. :)

Short: Есть ли способ проверить изменения в git-репозитории, но «скрыть» метаданные набора изменений от общего потребления (сохраняет предыдущий набор изменений в вине и т. Д.)?

Долго (не стесняйтесь пропустить): Недавно я унаследовал кодовую базу, которая, судя по всему, имела первоначального руководителя команды, который поощрял каждого из его разработчиков - в качестве упражнения в духовном росте - выискивать мир и находить стиль форматирования, с помощью которого он чувствовал себя почти как дзен ... действительно находил их различные художественные стили, применял их к форматированию кода и жил жизнью художника, рисуя шедевры кода каждый день. Появились такие паттерны, как случайный выбор числа строк между операторами, перенос каждого аргумента метода - объявления и вызовов ... Это продолжается и продолжается, но в основном я хочу настроить мои настройки форматирования в IDE, отключите его на несколько часов, очистите места, в которых он был запутан, и зафиксируйте его. Я получаю некоторую (действительную) поддержку со стороны команды о потере всей истории в легко видимом слоте «последний раз коснулся», который показан в аннотациях и тому подобное. Есть ли способ внести изменения, которые не унесут их? Я также подумал, что может быть трюк с ветвлением, который может сделать что-то вроде ветки, отформатировать в ветке, реинтегрировать другую ветку в эту, каким-то образом сделать мой «секретный коммит» восходящим из последних, который сохранит старый из них.

У кого-нибудь есть предложения? Я совершенно готов развлекать хаки для этого одноразового. :)

Ответы [ 2 ]

5 голосов
/ 15 марта 2012

Short: №

Долго: чтобы перейти к согласованному стилю, предложите своим коллегам-разработчикам модифицировать код, чтобы он соответствовал вашему общему стилю , когда они работают над ним . Таким образом, атрибуция вины остается неизменной для кода, который не был изменен. Для кода, который был изменен, атрибуция вины затем переносится на разработчика, который последний раз его коснулся. Вы можете сделать это более детально, например, очистив функцию форматирования, если хотите.

2 голосов
/ 15 марта 2012

То, что вы просите здесь, нарушает «дух» Git (из-за отсутствия лучшего термина).

Git серьезно относится к своей истории . Это была цель разработки системы, которая когда-то публиковалась, коммиты не могли быть изменены, если никто не заметил. Вы можете увидеть эффект этого дизайнерского решения в том, как работает Git. Например, сообщения коммита не могут быть легко изменены, и их практически невозможно изменить после нажатия.

Другими словами, тихая или скрытая фиксация вещей в вашем Git-хранилище не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...