Настроить автоматический эквивалент git stash git apply при смене веток - PullRequest
0 голосов
/ 05 октября 2018

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

set_env.py определяет переменные среды, которые я использую для входа в удаленное приложение

Поскольку я не хочу на самом деле выдвигать учетные данные, я выдвинул фиктивный файл, который в основном ничего не делает (какпеременные окружения, как предполагается, уже определены на тестовом сервере, например).

Однако, поскольку в мою ветку вставлен фиктивный файл, set_env.py считается подготовленным, и я не могу изменить ветви

git checkout other_branch

error: Your local changes to the following files would be overwritten by checkout:
    config/set_env.py
Please, commit your changes or stash them before you can switch branches.
Aborting

Решение состоит в том, чтобы просто спрятать этот файл каждый раз, когда я хочу переключить ветви (при условии, что у меня нет другого измененного подготовленного и незафиксированного файла)

git stash
git checkout other_branch
git stash apply

Однако становится громоздким необходимость набирать 3 команды каждый раз, когда я хочу изменить ветку, над которой я работаю.Есть ли способ сказать git, что с этого момента он считает этот файл неустановленным?(без удаления файла при следующем коммите)

Редактировать: ответ @phd кажется наиболее простым, однако он работает только в том случае, если у меня нет другого подготовленного незафиксированного файла.Есть ли решение, где я мог бы делать то, что я хочу, и все еще хранить другие файлы?

Приветствия

1 Ответ

0 голосов
/ 05 октября 2018

Создание псевдонима:

git config alias.stco "!f() { git stash && git checkout "$@" && git stash apply ; }; f"

Использование:

git stco other_branch

PS.stco для "тайника и кассы".

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