Подтвердить что ты не робот

GitHub - Unsynchronized Commit?

Я сделал кучу изменений в файлах в репозитории git. Прежде чем я совершил что-либо, меня попросили передать некоторые другие файлы, которые кто-то для меня сделал (из репозитория SVN). Я отбросил эти файлы в папку проекта, выбрал их из всех измененных файлов ранее и совершил их. Теперь мне нужно синхронизировать ветку, чтобы заставить их переместиться в Github, но когда я пытаюсь синхронизировать, я получаю "Uncommitted Changes". Пожалуйста, зафиксируйте свои изменения перед синхронизацией ".

Я предполагаю, что это относится ко всем файлам, которые я изменил ранее? Тем не менее, я не хочу, чтобы такие люди совершались... они не готовы. Я хочу только зафиксировать это небольшое подмножество файлов. Что вы делаете в этой ситуации? Как перенести все изменения, которые я сделал, я НЕ хочу быть частью этого коммита из-за отсутствия лучшего слова и получить часть, которую я хочу изменить в репозиторий github?

Я использую приложение GitHub, но могу сделать это из командной строки, если это необходимо... просто не уверен, что нужно делать.


Вот несколько скриншотов, чтобы сделать его более понятным:

В нижней части списка измененных файлов есть фиксация, которую я хочу переместить:

enter image description here

Попытка получить эту фиксацию для перехода на github Я нажимаю кнопку Sync и получаю:

enter image description here

Какое решение? Как я могу получить эти "незафиксированные изменения"? Очевидно, что я новичок в git, поэтому я не понимаю правильного подхода. Спасибо.

4b9b3361

Ответ 1

Я не знаю, поддерживает ли приложение GitHub эту функциональность (хотя я бы от этого ожидал), но git имеет функцию "git stash", которая принимает все ваши незафиксированные изменения и сбрасывает их в особом месте. Это оставляет вам чистую рабочую копию (без этих изменений), где вы можете делать все, что вам нужно, а затем используйте git stash pop (или git stash apply), чтобы повторно применить незафиксированные изменения. Я рекомендую вам прочитать manpage.

Ответ 2

В клиенте GitHub для Mac перейдите в Репозиторий > Push на панели меню.

Это приведет к загрузке любых неконтролируемых коммитов на сервер GitHub. Так как это не загружает новый код, клиент GitHub не заставит вас совершать все ваши изменения. Это полезно, если у вас есть куча локальных изменений, которые не готовы к фиксации, но у вас также есть несколько локальных изменений, которые готовы к фиксации.

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