Как внести изменения, которые только я вижу?

Например, я хотел бы изменить страницу входа в систему, таким образом, она авторегистрирует меня.

Я хочу, чтобы те изменения ТОЛЬКО работали над моей станцией проектирования, и не видим в нажатии. если бы я делаю его на ответвлении, чем я должен был бы так или иначе не объединить то изменение перед каждым нажатием.

это поддерживается мерзавцем?

7
задан Charles Sprayberry 29 January 2012 в 04:24
поделиться

3 ответа

Почему бы не использовать установку драйвера фильтра gitattributes ?

smudge

Каждый раз при проверке вашего каталога он проверяет сценарий на этапе smudge ) для этого файла (и только этого файла), если выполняется определенное условие (например, «это ваша станция разработки или нет»), и соответствующим образом изменит содержимое.
Шаг clean восстановит его содержимое или, по крайней мере, проигнорирует эту конкретную модификацию.

2
ответ дан 7 December 2019 в 03:13
поделиться

Если у вас установлен Git не ниже 1.7.0, вам может понравиться эта «сантехника»:

git update-index --skip-worktree -- path

Из git update-index справочная страница в разделе «Бит рабочего дерева пропуска» :

Бит рабочего дерева пропуска может быть определен в одном (длинном) предложении: при чтении записи , если она помечена как рабочее дерево пропуска , то Git притворяется, что его версия рабочего каталога актуальна, и вместо этого читает индексную версию .

Чтобы пояснить, «чтение» означает проверку существования файла, чтение атрибутов файла или содержимого файла. Версия рабочего каталога может присутствовать или отсутствовать.

«Бит пропуска рабочего дерева» является основой для механизма разреженной проверки, описанного в git read-tree manpage` .


В старых версиях Git есть связанный «бит» ( git update-index --assume-unchanged ), но он не должен использоваться для целей OP. Похоже, что это может быть полезно для ситуации OP , но сопровождающий Git сказал, что его контракт («обещание») делает его непригодным для таких целей .

7
ответ дан 7 December 2019 в 03:13
поделиться

Я не уверен, что понимаю вопрос: почему вы не можете просто разветвляться? Сделайте master своей основной общедоступной веткой и продолжайте переустанавливать свою частную ветвь на master (или слияние master с вашей частной веткой). Никогда не доводите свои шансы до master , только вносите изменения с master в свою частную ветку.

Если вы случайно внесете изменения в свою частную ветку, которой хотите поделиться с master , нет проблем, чтобы выбрать изменения на master.

0
ответ дан 7 December 2019 в 03:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: