Репост из: Диджитализируй!
вот вы, например, знали, что git умеет показывать, как менялась и развивалась функция? А git сие умеет, могёт!
git log -L :prepare_payments_xlsx_report:payments.py
покажет, как создавалась и менялась функция prepare_payments_xlsx_report, определённая в payments.py.
Git сам определит границы функции и покажет, как код, сейчас находящийся в этих границах, появился в репозитории и как он менялся до текущего состояния. То есть он не просто, как дефолтный git blame, покажет, кто-когда внёс текущее построчное состояние, а именно отследит изменение всего блока кода, определяющего функцию — со всеми правками, удалениями и прибавлениями в этом блоке кода. Вообще каеф!
git log -L :prepare_payments_xlsx_report:payments.py
покажет, как создавалась и менялась функция prepare_payments_xlsx_report, определённая в payments.py.
Git сам определит границы функции и покажет, как код, сейчас находящийся в этих границах, появился в репозитории и как он менялся до текущего состояния. То есть он не просто, как дефолтный git blame, покажет, кто-когда внёс текущее построчное состояние, а именно отследит изменение всего блока кода, определяющего функцию — со всеми правками, удалениями и прибавлениями в этом блоке кода. Вообще каеф!