Всем привет! Помогите, пожалуйста. разобрать с git bush. создаю репозиторий на github.com далее на логкалке запускаю git bush и набираю 1 - git init создаю файл - index.php 2 - git add . 3 - git commit -a -m "Create project" Например, я добавил код в index.php. Как мне зафиксировать дальнейшие изменения? git add index.php и git commit -m "comment"?
https://git-scm.com/book/ru/v1/Основы-Git И если ты создаешь сначала репу на github, то лучше начинать не с git init, а с git clone, тогда автоматом установится удалённый репозиторий. Хотя, в принципе, это и сейчас не трудно сделать
как я понял, после внесения изменений в проект, надо проиндексировать эти файлы (или все), для этого я набираю git add . далее я сохраняю это - делаю commit. и так, несколько раз. а как мне откатиться к состоянию (или это ветками называется?) первому, второму. где эта нумерация ведется?
это называется коммиты. набери git log и ты увидишь список созданных тобой коммитов. у каждого коммита есть хеш, 16-ричного вида типа f345ae576a7c87c66a8aa6252 можно откатится к любому коммиту: git checkout {6 или 9 начальных символов хеша} чтоб не мучаться с хешами, можно давать метки(tags) ветки это другое. каждая ветка - отдельный поток разработки содержащий свои коммиты. их можно сливать в одну или делать новые ветки из любой другой.. и быстро переключаться между ними... кароч, читай доку.
т.е. коммиты содержатся в ветке. в одной ветке можно переходить на разные коммиты. также можно переходить между ветками. так?
тогда мне делать так: первый раз изменил проект проиндексировал коммит создал метку, второй раз изменил проект проиндексировал коммит создал метку, ... n раз изменил проект проиндексировал коммит создал метку ?
Не надо создавать столько меток. Метки - для чего-то значимого, какой-то вехи. У коммитов есть номера, @runcore же описал. Прочитай книгу. Вот, кстати, на вторую версию ссылка https://git-scm.com/book/ru/v2
- индексируй, когда собираешься добавить коммит, а не просто так. - коммит создается(по идее) когда ты закончил добавление какойто фичи, или исправление бага. или, если задача большая, то ты разбиваешь работу на подзадачи, кодишь их, и по окончании каждой делаешь коммит... так проще потом понять на каком этапе что было добавлено и что откатить если обнаружил что чтото сломалось... в общем как тебе удобно. - метки для другого. например кодил неделю. добавил 5 запланированных фич. выпускаешь очередной релиз приложения. и вот тут добавляешь метку с номером релиза(напр 3.0.0).. те это будет как версия твоего ПО. далее, обнаружил баг, пофиксил, повысил минорную версию метки, получилось 3.0.1 (те релиз + один фикс бага) и т.д. ну это просто как пример. и потом можно по этим меткам(версиям) переключаться. не забивая голову хешами коммитов..
не могу залить на сервер сделанные изменения что не сделал? https://ibb.co/kqP6qdf git status - https://ibb.co/Zm8D4WZ https://ibb.co/Zm8D4WZ
видимо указатель сдвинут на определенный коммит а не на 'голову' ветки. следовательно гит непонимает куда именно(в какую ветку) эти изменения надо толкнуть. вообще переключать состояние на конкретный коммит, не совсем правильно. лучше делать отдельные ветки с нужного коммита..