Первоначальный коммит с использованием "git commit -am" завершился неудачно и вызвал ошибку при отправке на GitHub
Я новичок в Git/GitHub и испытываю огромные трудности с продвижением моего нового репо на GitHub.
Я создал свой проект локально, который по сути имеет следующую структуру каталогов:
myapp/
src/
<A bunch of source files>
build.grade
gradle.properties
README.md
.gitignore
Для хорошей меры, вот мой .gitignore
(в случае, если его виновник):
.idea
*.iml
*.ipr
*.iws
/out
.gradle
/build
/files
/*.yaml
/*.sh
Я подтвердил, что Git был установлен, запустив git —version
который производит:
git версия 2.3.2 (Apple Git-55)
Затем я создал новый репозиторий GitHub (приватный) и оставил его пустым, чтобы мне не пришлось ничего объединять.
Затем я попытался инициировать свой проект в качестве нового репозитория git и вот история командной строки:
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git init
Initialized empty Git repository in /Users/myuser/sandbox/eclipse/workspace/myapp/.git/
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git commit -am "Initial barebones commit."
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
Omit --global to set the identity only in this repository.
fatal: unable to auto-detect email address (got 'myuser@mac.(none)')
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git config --global user.email "myuser@example.org”
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git config --global user.name “mygithubusername”
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git commit -am "Initial barebones commit."
On branch master
Initial commit
Untracked files:
.classpath
.gitignore
.project
.settings/
README.md
bin/
build.gradle
gradle.properties
gradle/
gradlew
gradlew.bat
src/
nothing added to commit but untracked files present
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git remote add origin https://github.com/mygithubusername/myapp.git
myuser@mac:~/sandbox/eclipse/workspace/myapp$ git push -u origin master
error: src refspec master does not match any.
error: failed to push some refs to 'https://github.com/mygithbusername/myapp.git'
Итак, как вы можете видеть, я пытался:
- Бег
git init
- Добавление и продвижение изменений в локальный репозиторий, но сначала нужно было настроить мою электронную почту и имя пользователя (опять же, я новичок в Git здесь)
- Добавлено и совершено
- Добавлен новый удаленный репо
- Пытался подтолкнуть к этому удаленному представителю
Согласно этому ответу, эта ошибка " src ref spec master is not any any " может быть связана с тем фактом, что я еще ничего не зафиксировал, что может привести к появлению ошибок / предупреждений "неотслеживаемого файла", которые я вижу выше.
В любом случае, где я ошибся, и что я должен сделать, чтобы это исправить?
3 ответа
Судя по вашему журналу, не похоже, что вы добавили свои файлы (для отслеживания) перед фиксацией.
С помощью git commit -am
недостаточно, потому что он добавляет только измененные файлы (то есть файлы, которые уже являются частью вашего репо). Вы находитесь на начальном коммите, поэтому в индексе пока нет файлов.
Чтобы добавить (разместить) все файлы в вашем текущем каталоге, используйте git add .
прежде чем совершить. Альтернативно, используйте git add <filename1> <filename2> ...
поставить отдельные файлы для фиксации.
Тогда вы можете использовать git status
чтобы убедиться, что файлы, которые вы хотите добавить в ваш коммит, должны быть зафиксированы. Они должны отображаться зеленым цветом, если они правильно подготовлены (под заголовком "Изменения для фиксации". Файлы, не подготовленные для фиксации, будут отображаться красным цветом под заголовком "Изменения не подготовлены для фиксации").,
Больше информации о рабочем процессе git здесь: https://git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository
Вы должны использовать git add
чтобы добавить ваши неотслеживаемые файлы.
Используйте команду
git add .
Вывод Git должен выглядеть так:
On branch master
Initial commit
Untracked files:
(use "git add <file>..." to include in what will be committed)
foo.txt
nothing added to commit but untracked files present (use "git add" to track)
(Обратите внимание на подсказку между скобками, которая ответит на ваш вопрос).
Кто-то или что-то установило переменную конфигурации advice.statusHints
ложно для вашего, кажется.