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

Приложите изменения, сделанные с помощью atlassian sourcetree

У меня есть много файлов, измененных в моем проекте. Я хочу записать 2 файла, но я немного боюсь совершить ошибку, так как я никогда этого не делал.

Если бы я сейчас застрелил, он будет только спрятать 2 поэтапных файла? enter image description here

И если я не отмечу "Keep staged changes", вернется ли он к тому, как это было раньше? Это может показаться глупым, но лучше сэкономить, чем жаль.

4b9b3361

Ответ 1

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

Когда вы решите сохранить изменения в области индекса/промежуточной области, эти изменения все равно будут сохранены, но Git также не вернет их в промежуточной области. Это полезно, если, например, вы делаете несколько несвязанных изменений, и вы хотите запускать тесты только с некоторыми из этих изменений, не влияя на те, которые не связаны друг с другом.

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

Однако не проверенные файлы обычно не спрятаны. Если вы хотите также скопировать эти файлы, вам нужно передать дополнительную опцию git stash в командной строке (у SourceTree для Windows в настоящее время нет такой опции. Я не знаю, соответствует ли то же самое для Mac версия):

git stash save --include-untracked
# Or shorter
git stash save -u

См. также

  • Официальная документация ядра Linux для git stash.

Ответ 2

Да, но пристыковка в этом случае будет означать два сценария -

  • Проверка сохраненных изменений: поэтапные файлы все равно будут находиться в вашей промежуточной области, но все ваши измененные несохраненные файлы будут спрятаны.

  • Без проверки поэтапных изменений: все ваши файлы будут спрятаны.