После git clone, чтобы заставить код работать, я должен внести некоторые изменения локально. Таким образом, в любое время, когда мне нужно нажать на код, мне нужно отменить эти изменения, прежде чем нажать. Есть ли способ иметь некоторые локальные изменения, которые не будут отображаться в git diff. Я не хочу игнорировать полные файлы только часть кода.
4 ответа
Предположим, ваша ветвь foo
. Создайте новую ветку bar
из нее. Зафиксируйте изменяемые изменения в foo
и не допускающие внесения изменений в bar
.
Всякий раз, когда вы хотите проверить, может ли работать код foo
, сначала запустите git rebase foo bar
, после чего bar
будет извлечен и обновлен, а затем протестируйте код обновленного {{X3} } . Если это работает, вы можете нажать foo
.
Если foo
обновляется позже новыми коммитами, снова запустите git rebase foo bar
, чтобы обновить bar
.
Не уверен, что вы можете частично игнорировать файл
Вы можете сделать переменную окружения в файле конфигурации, который находится в gitignore, а затем в вашем коде сделать так:
if ENV['some-environment-variable'] == 'some-value'
//do certain things
else if ENV['some-other-environment-variable'] == 'some-other-value'
//do other certain things
else
//do nothing
end
Будет ли это работать для вашего решения?
Вы можете в интерактивном режиме решить, какие изменения вы хотите совершить. Используйте git add --patch
для перебора фрагментов измененного кода и добавления того, что вам нужно. Затем вы можете отправить эти изменения и сохранить локальные изменения локальными.
Я предлагаю разделить файл / код / класс на отдельные файлы.
Тогда у вас есть несколько вариантов:
git update-index --assume-unchanged path/to/the/file
git stash
магия с Сохранять только один файл из нескольких файлов, которые были изменены с помощью Git?- Добавьте файл с изменениями, которые вы не хотите вносить в git ignore.
Новые вопросы
git
Git - это система управления распределенными версиями с открытым исходным кодом (DVCS). Используйте этот тег для вопросов, связанных с использованием Git и рабочими процессами. НЕ ИСПОЛЬЗУЙТЕ тег [github] для решения проблем, связанных с Git, просто потому, что репозиторий размещен на GitHub. Также не используйте этот тег для общих вопросов по программированию, которые связаны с репозиторием Git.