Поскольку единственное жизнеспособное решение - всегда отслеживать файл «f
», вы можете добавить только в ветви B
, smudge / clean process с gitattributes filter driver :
[/g3]
При проверке ветки B
:
f
во временном файле, заменив содержимое f
на один файл fbis
(отслеживаемый файл, который будет содержать для ветки B
, «B
содержимое f
") f
содержимое (как изменено в B
) в fbis
(fbis
совершается с f
изменениями в ветви B
) восстановить f
(с временным файлом), то есть f
не выполняется (игнорируется в B
) Вы можете добавить, все еще в ветви B
, пользовательский драйвер слияния , который будет защищать fbis
в случае слияния из других ветвей с B
: драйвер слияния всегда будет сохранять B
версию fbis
контента, следя за тем, чтобы проигнорированный файл f
вернуть свое содержание, когда всегда отделяется B
.
Поскольку эти драйверы (фильтр и слияние) не выполняются в других ветвях, файл «f» фиксируется в других ветвях со всеми его модификациями. В ветке B
его содержимое никогда не изменится, и все же «локальные модификации», сделанные в f
, будут восстановлены всякий раз, когда B
выгружается.
Если это восстановление содержимого не требуется, вам не нужно управлять fbis
. Просто сохраните драйвер фильтра, и вы будете уверены, что независимо от того, какую модификацию вы делаете с f
в ветви B
, эти изменения никогда не будут совершены, эффективно игнорируя содержимое f
.