Как добавить несколько файлов в Git одновременно
это будет мое первое использование git. Я добавил новые файлы ( много ) в папку/проект (локальный репозиторий git).
Я прошел через онлайн-уроки и форумы и посмотреть, что я могу сделать
git commit -a
поэтому я иду в базовую папку репозитория и делаю
sudo git commit -a
но затем, некоторые экраны приходит и просит меня Добавить комментарий, который я делаю. я не знаю, как продолжить или выйти. Я не хочу испортить, поэтому я сделал ctrl + Z и не делал что угодно.
не могли бы вы, ребята, пожалуйста, изложить команды, которые мне нужно использовать?
git commit -a
и
git push?
8 ответов:
добавить все изменения, которые вы внесли:
git add .
чтобы делать:
git commit -m "MY MESSAGE HERE"
# - m-это флаг сообщениявы можете собрать эти шаги, как это:
git commit -a -m "MY MESSAGE HERE"
чтобы переместить зафиксированные изменения из локального репозитория в удаленный репозиторий:
git push origin master
возможно, вам придется ввести свое имя пользователя/пароль для github после этого. вот!--22--> хороший грунтовка по использованию git. Немного старый, но он охватывает то, что происходит на самом деле хорошо.
вы также можете выбрать несколько файлов, как это
git add folder/subfolder/*
добавить все файлы в указанной папке. Очень полезно, когда вы редактировать кучу файлов, но вы просто хотите зафиксировать некоторые из них...
как некоторые уже упоминали, возможным способом является использование git interactive staging. Это здорово, когда у вас есть файлы с разными расширениями
$ git add -i staged unstaged path 1: unchanged +0/-1 TODO 2: unchanged +1/-1 index.html 3: unchanged +5/-1 lib/simplegit.rb *** Commands *** 1: status 2: update 3: revert 4: add untracked 5: patch 6: diff 7: quit 8: help What now>
если вы нажмете
2
затемenter
вы получите список доступных файлов, которые будут добавлены:What now> 2 staged unstaged path 1: unchanged +0/-1 TODO 2: unchanged +1/-1 index.html 3: unchanged +5/-1 lib/simplegit.rb Update>>
теперь вам просто нужно вставить количество файлов, которые вы хотите добавить, так что если мы хотим добавить
TODO
иindex.html
мы типа1,2
Update>> 1,2 staged unstaged path * 1: unchanged +0/-1 TODO * 2: unchanged +1/-1 index.html 3: unchanged +5/-1 lib/simplegit.rb Update>>
видишь
*
перед номером? это означает, что файл был добавлен.теперь представьте, что у вас есть 7 файлов и вы хотите добавить их все, кроме 7-го? Конечно, мы могли бы набрать
1,2,3,4,5,6
но представьте, что вместо 7 у нас есть 16, что было бы довольно громоздко, хорошо,что нам не нужно вводить их все, потому что мы можем использовать диапазоны, набрав1-6
Update>> 1-6 staged unstaged path * 1: unchanged +0/-1 TODO * 2: unchanged +1/-1 index.html * 3: unchanged +5/-1 lib/simplegit.rb * 4: unchanged +5/-1 file4.html * 5: unchanged +5/-1 file5.html * 6: unchanged +5/-1 file6.html 7: unchanged +5/-1 file7.html Update>>
мы можем даже использовать несколько диапазонов, так что если мы хотим от 1 до 3 и от 5 до 7 мы вводим
1-3, 5-7
:Update>> 1-3, 5-7 staged unstaged path * 1: unchanged +0/-1 TODO * 2: unchanged +1/-1 index.html * 3: unchanged +5/-1 lib/simplegit.rb 4: unchanged +5/-1 file4.html * 5: unchanged +5/-1 file5.html * 6: unchanged +5/-1 file6.html * 7: unchanged +5/-1 file7.html Update>>
мы также можно использовать это для unstage файлов, если мы наберем
-number
, так что если бы мы хотели unstage файл номер 1 мы бы набрали-1
:Update>> -1 staged unstaged path 1: unchanged +0/-1 TODO * 2: unchanged +1/-1 index.html * 3: unchanged +5/-1 lib/simplegit.rb 4: unchanged +5/-1 file4.html * 5: unchanged +5/-1 file5.html * 6: unchanged +5/-1 file6.html * 7: unchanged +5/-1 file7.html Update>>
и, как вы можете себе представить, мы также можем unstage диапазон файлов, так что если мы наберем
-range
все файлы на этом диапазоне будут проиндексированы. Если бы мы хотели, чтобы отменить добавление всех файлов от 5 до 7 у нас будет типа-5-7
:Update>> -5-7 staged unstaged path 1: unchanged +0/-1 TODO * 2: unchanged +1/-1 index.html * 3: unchanged +5/-1 lib/simplegit.rb 4: unchanged +5/-1 file4.html 5: unchanged +5/-1 file5.html 6: unchanged +5/-1 file6.html 7: unchanged +5/-1 file7.html Update>>
Если вы хотите добавить несколько файлов в определенной папке, вы можете разделить их с помощью
{,}
. Это потрясающе для того, чтобы не повторять длинные пути, напримерgit add long/path/{file1,file2,...,filen}
будьте осторожны, чтобы не ставить пробелы между
,
.
когда вы меняете файлы или добавляете новые в репозиторий, вы сначала должны их разместить.
git add <file>
или если вы хотите поставить все
git add .
делая это, вы говорите git, какие файлы вы хотите в следующем коммите. Вы тут:
git commit -m 'your message here'
вы используете
git push origin master
где origin-это ветвь удаленного репозитория, а master-ваша локальная ветвь репозитория.
похоже, что git запускает ваш редактор (вероятно,
vi
), Так что вы можете ввести сообщение коммита. Если вы не знакомы сvi
, Это обучение. Альтернативы:
использовать
git commit -a -m "my first commit message"
, чтобы указать комментарий к коммиту в командной строке (с помощью этого не запустится редактор)установить
EDITOR
переменная окружения для редактора, с которым вы знакомы