Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Как загрузить файлы на github


Как выложить свой проект на GitHub.com

Если вы, как и я, решили освоить git, то скорее всего у вас возникнет желание разместить свой проект на GitHub.com для публичного доступа.

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

Два способа

Существует два способа для связи с гитхабом. Они далеко не так очевидны для новичков. Основной нюанс заключается в том, какой именно будет использован гитхабовский репозиторий: совершенно пустой (не инициализированный) или уже рабочий. Именно это будет определять два разных варианта работы.

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

Второй способ используется для совершенно пустого гитхабовского репозитория. Если уже есть локальный репозиторий, то можно вручную связать его с гитхабом без клонирования.

Регистрация на GitHub.com

Вначале нужно зарегистрироваться на GitHub.com. Процедура простая, не будем на ней останавливаться. После этого нужно создать репозиторий. В поле «Repository name» следует указать имя, которое в будущем будет совпадать с каталогом проекта. Это удобно, хотя, локальный каталог может быть любым. Пусть проект называется «demo».

Здесь очень важнный момент. Если вы отметите любые опции (добавить .gitignore, лицензию и/или readme), то фактически это будет означать инициализацию репозитория. То есть это уже не пустой репозиторий, а наполненный и инициализировнный. В этом случае для связки придётся вначале клонировать удаленный. Это первый способ.

Если же вы не отметили ни одной опции, то гитхаб создаст совершенно пустой репозиторий без инициализации. И вот такой репозиторий можно связать с уже существующим локальным. Это второй способ.

После создания репозиторий получит уникальную ссылку, например: https://github.com/USER/demo.git - где USER — ваш логин в гитхабе. Эта ссылка потребуется для работы.

Установка Git

Я всё ставил с официального сайта Git. Там же на сайте есть руководство Book, где описаны все начальне шаги. Поэтому будем считать, что git установлен и настроен.

Рассмотрим два способа отдельно.

Первый способ

Наш проект размещается в каталоге /demo/. Было бы неплохо сохранить этот каталог и для дальнейшей работы. Для того, чтобы обезопасить себя, переименуем его /demo-temp/любым файловым менеджером. То есть теперь каталога /demo/у нас нет.

Запускаем git-bash и клонируем удаленный репозиторий на локальную машину:

git clone https://github.com/USER/demo.git

— где USER — ваше имя на гитхабе. Ссылку также можно скопировать со страницы репозитория в поле «HTTPS clone URL».

Появится каталог /demo/который создал git. Он должен быть пустой, кроме подкаталога «.git» — это служебный каталог, и его трогать не нужно.

Теперь копируем в каталог /demo/ содержимое нашего проекта, которое мы сохранили в /demo-temp/. Всё, что мы сюда скопируем, будет вылождено на GitHub, поэтому желательно удалить все ненужные файлы. Если какие-то служебные файлы требуются для проекта, то их можно указать в файле .gitignore.

Выполняем команду

git add .

Это добавит все файлы для отслеживания git'ом. Проверить состояние (до и после add) можно командой

git status

Теперь делаем коммит (сообщение любое):

git commit -m "Add project"

Пока мы работаем с локальным репозиторием. То есть нужно настроить его так, чтобы он оказался в том виде, который отправится на гитхаб.

Для удобства можно сразу выставить метку версии (опять же любой вариант):

git tag v1.0

Теперь можно отправить изменения на гитхаб.

git push

Git может выдать сообщение, что команда push не настроена по-умолчанию. Пока не обращайте внимания на это сообщение. Нужно будет внести изменения в конфигурацию позже.

Git потребует ввести логин и пароль для GitHub.com. Учитывайте, что пароль полностью скрывается, поэтому не будет видно даже «звездочек». После ввода нажимаем Enter и git выполнит обновление удаленного репозитория.

Теперь нужно обновить метки на удаленном репозитории (если вы их задали).

git push --tags

Здесь также нужно будет ввести логин и пароль.

Всё, синхронизация выполнена! Временный каталог /demo-temp/можно удалить или сохранить как старый резервный вариант.

Если мы зайдем на страницу репозитория на гитхабе, то увидим свой проект.

Для настройки push, если требуется, пишем:

git config --global push.default simple

Второй способ

Наш проект может размещатся в любом каталоге. Для него нужно инициализировать git. Это стандартная процедура:

git init git add . git commit -m "Init"

Теперь для проекта git работает и его можно использовать по своему усмотрению: добавлять версии, смотреть логи, делать ветки и т.п.

Для связи с GitHub'ом следует указать удаленный репозиторий:

git remote add origin https://github.com/USER/demo.git git push -u origin master

Этот код указывает адрес удаленного и отправляет все изменения на гитхабовский сервер. Если мы зайдем на страницу репозитория на гитхабе, то также увидим свой проект.

Другие записи сайта

Git и Github. Простые рецепты / Хабр

При разработке собственного проекта, рано или поздно, приходится задуматься о том, где хранить исходный код и как поддерживать работу с несколькими версиями. В случае работы на компанию, обычно это решается за вас и необходимо только поддерживать принятые правила. Есть несколько общеупотребимых систем контроля версий, и мы рассмотрим одну из самых популярных — это Git и сервис Github.

Система Git появилась, как средство управления исходными текстами в операционной системе Linux и завоевала множество поклонников в среде Open Source.

Сервис Github предоставляет хостинг (хранение) исходных текстов как на платной, так и на бесплатной основе. Это одна из крупнейших систем, которую любят Open Source пользователи. Основное отличие платной версии — это возможность создания частных репозиториев (хранилищ) исходных текстов и если вам скрывать нечего, то можете спокойно пользоваться бесплатной версией.

После того, как вы начали работу над проектом и написали какой-то работающий прототип, у вас появится желание сохранить результаты работы. Это так же может быть полезно в случае, если вы захотите продолжить работу на другом компьютере. Самое простое решение — это сохранить все на флешке. Этот вариант неплохо работает, но если есть подключение к интернету (а сейчас у кого его нет), то удобно воспользоваться системами Git/Github.

В этой статье будут описаны базовые сценарии использования систем Git/Github при работе над проектом в среде Linux с помощью командной строки. Все примеры проверялись на системе с Linux Ubuntu 14.04 и Git 1.9.1. Если вы пользуетесь другим дистрибутивом, то возможны отличия.

Создание локального репозитория

Предположим, что ваш проект находится в папке /home/user/project. Перед тем, как сохранять исходники, можно посмотреть, нет ли временных файлов в папке с проектом и по возможности их удалить.

Для просмотра папки удобно воспользоваться командой tree, которая покажет не только содержимое каждой папки, но и древовидную структуру директорий.

Часто временные файлы содержат специфические суффиксы, по которым их легко обнаружить и в последствии удалить. Для поиска таких файлов можно воспользоваться командой find. В качестве примера посмотрим, как найти все файлы, которые генерируются компилятором Python и имеют расширение .pyc

Переходим в папку с проектом /home/user/project:

cd /home/user/project 

И показываем список файлов с расширением .pyc:
find . -name *.pyc 

Эта команда выведет список всех файлов с расширением .pyc в текущей директории и в ее поддиректориях. Для удаления найденных файлов, достаточно добавить ключ -delete к этой команде:
find . -name *.pyc -delete 

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

Создадим локальный репозиторий в папке с проектом:

git init 

После выполнения этой команды появится новая папка с именем .git. В ней будет несколько файлов и поддиректориев. На данный момент система управления версиями еще не видит наших файлов.
Добавление файлов в локальный репозиторий

Для добавления файлов используется команда:
git add readme 

После выполнения команды, файл readme будет добавлен в систему управления версий (конечно если он уже был то этого в проекте). При добавлении файла генерируется хеш значение, которое выглядит примерно так:
9f2422325cef705b7682418d05a538d891bad5c8 

Добавленные файлы хранятся в папке .git/objects/xx/yyyyyyyy, при этом первые 2 цифры хеша ипользуются для указания директории, а остальное хеш значение является именем файла. Наш добавленный файл будет находится здесь:
.git/objects/9f/2422325cef705b7682418d05a538d891bad5c8 

Что легко увидеть с помощью команды:
ls .git/objects 

Сам файл является архивом, который легко распаковать и вывести на экран, указав полное значение хеша.
git cat-file -p 9f2422325cef705b7682418d05a538d891bad5c8 

Для того, чтобы добавить все файлы из текущей директории введите:
git add . 

Если нужно добавить файлы из текущей директории и из всех поддиректориев, то используйте:
git add --all 

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

Например, если в в файл .gitignore добавить следующую строчку *.pyc, то все файлы с расширением .pyc не будут добавляться в репозиторий.

После добавления файлов, все изменения находятся в так называемой staging (или cached) area. Это некоторое временнное хранилище, которое используется для накопления изменений и из которого создаются собственно версии проектов (commit).

Для просмотра текущего состояния можно воспользоваться командой:

git status 

После выполнения команды мы увидим, что в stage area находится наш файл:
new file: readme 

Если вы продолжите вносить изменения в файл readme, то после вызова команды git status вы увидите две версии файла.
new file: readme modified: readme 

Чтобы добавить новые изменения достаточно повторить команду. Команда git add не только добавляет новые файлы, но и все изменения файлов, которые были добавлены ранее.
git add readme 

Можно отменить добавления файла readme в staging area с помощью команды:
git rm --cached readme 

После выполнения команды, файл readme отметится, как неизмененный системой.
Создание версии проекта

После того, как мы добавили нужные файлы в staging area мы можем создать версию проекта. С помощью команды:
git commit -m "comment" 

Каждая новая версия сопровождается комментарием.

После коммита, мы сможем найти два новых объекта внутри .git репозитория.

.git/objects/9f/2422325cef705b7682418d05a538d891bad5c8 .git/objects/65/7ab4c07bd3914c7d66e4cb48fe57f5c3aa7026 .git/objects/da/c6721c3b75fcb3c9d87b18ba4cef2e15e0a3d3 

Посмотрим, что внутри:
git cat-file -t 657ab4c07bd3914c7d66e4cb48fe57f5c3aa7026 

Ключ -t показывает тип объекта. В результате мы видим:
commit 

Для второго объекта:
git cat-file -t dac6721c3b75fcb3c9d87b18ba4cef2e15e0a3d3 

Результат:
tree 

Для самого первого файла:
git cat-file -t 9f2422325cef705b7682418d05a538d891bad5c8 

Мы видим:
blob 

Если мы будем дальше изучать содержимое этих файлов, то обнаружим древовидную структуру. От каждого коммита можно по ссылкам пройти по всем измененным файлам. Для практического применения это не очень нужно, но возможно так будет легче понять, что происходит при работе с системой Git.

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

git commit -m "comment" --amend 

Или так:
git commit --amend --no-edit 

Ключ --no-edit нужен, чтобы не вводить заново комментарий.

Можно просмотреть изменения, которые вы внесли последним коммитом:

git show 

Или так:
git show --name-only 

Ключ --name-only нужен, чтобы показывать только имена измененный файлов. Без него по каждому измененнному файлу будет выдан список всех изменений.

Если вы продолжили работать и изменили только те файлы, которые были уже добавлены в систему командой git add, вы можете сделать коммит одной командой:

git commit -a -m "comment" 

Для просмотра списка всех коммитов, воспользуйтесь командой:
git log 

Или так:
git log --oneline 

Ключ --oneline нужен, чтобы уменьшить количество информации выдаваемой на экран. С этим ключем каждый коммит показывается в одну строчку. Например:
2b82e80 update 657ab4c first 

Для того, чтобы просмотреть изменения по конкретному коммиту, достаточно в команду git show добавить хеш значение коммита, которое можно получить с помощью предыдущей команды.
git show 657ab4c 

Для отмены последнего коммита (кроме самого первого) можно воспользоваться следующей командой:
git reset HEAD~1 

Для того чтобы удалить все файлы в папке, которые не относятся к проекту и не сохранены в репозитории, можно воспользоваться командой:
git clean -df 

Создание репозитория на Github

До текущего момента мы работали с локальным репозиторием, который сохранялся в папке на компьютере. Если мы хотим иметь возможность сохранения проекта в интернете, создадим репозиторий на Github. Для начала нужно зарегистрироваться на сайте github.com под именем myuser (в вашем случае это может быть любое другое имя).

После регистрации нажимаем кнопочку "+" и вводим название репозитория. Выбираем тип Public (репозиторий всегда Public для бесплатной версии) и нажимаем Create.

В результате мы создали репозиторий на сайте Github. На экране мы увидим инструкцию, как соединить наш локальный репозиторий со вновь созданным. Часть команд нам уже знакома.

Добавляем удаленный репозиторий (по протоколу SSH) под именем origin (вместо origin можно использовать любое другое имя).

git remote add origin [email protected]:myuser/project.git 

Можем просмотреть результат добавления с помощью команды:
git remote -v 

Если все было правильно сделано, то увидим:
origin [email protected]:myuser/project.git (fetch) origin [email protected]:myuser/project.git (push) 

Для того, чтобы отменить регистрацию удаленного репозитария введите:
git remote rm origin 

Это может понадобиться, если вы захотите поменять SSH доступ на HTTPS. После этого можно добавить его опять, например под именем github и протоколом HTTPS.
git remote add github https://github.com/myuser/project.git 

Следующей командой вы занесете все изменения, которые были сделаны в локальном репозитории на Github.
git push -u github master 

Ключ -u используется для того, чтобы установить связь между удаленным репозиторием github и вашей веткой master. Все дальнейшие изменения вы можете переносить на удаленный репозиторий упрощенной командой.
git push 

Перенос репозитория на другой компьютер

После того, как репозиторий был создан на Github, его можно скопировать на любой другой компьютер. Для этого применяется команда:
git clone https://github.com/myuser/project.git 

Результатом выполнения этой команды будет создание папки project в текущем каталоге. Эта папка также будет содержать локальный репозиторий (то есть папку .git).

Так же можно добавить название папки, в которой вы хотите разместить локальный репозиторий.

git clone https://github.com/myuser/project.git <myfolder> 

Работа с одним репозиторием с разных компьютеров

С одним репозиторием с разных компьютеров может работать несколько разработчиков или вы сами, если например работаете над одним и тем же проектом дома и на работе.

Для получения обновлений с удаленного репозитория воспользуйтесь командой:

git pull 

Если вы изменили ваши локальные файлы, то команда git pull выдаст ошибку. Если вы уверены, что хотите перезаписать локальные файлы, файлами из удаленного репозитория то выполните команды:
git fetch --all git reset --hard github/master 

Вместо github подставьте название вашего удаленного репозитория, которое вы зарегистрировали командой git push -u.

Как мы уже знаем, для того чтобы изменения выложить на удаленный репозиторий используется команда:

git push 

В случае, если в удаленном репозитории лежат файлы с версией более новой, чем у вас в локальном, то команда git push выдаст ошибку. Если вы уверены, что хотите перезаписать файлы в удаленном репозитории несмотря на конфликт версий, то воспользуйтесь командой:
git push -f 

Иногда возникает необходимость отложить ваши текущие изменения и поработать над файлами, которые находятся в удаленном репозитории. Для этого отложите текущие изменения командой:
git stash 

После выполнения этой команды ваша локальная директория будет содержать файлы такие же, как и при последнем коммите. Вы можете загрузить новые файлы из удаленного репозитория командой git pull и после этого вернуть ваши изменения которые вы отложили командой:
git stash pop 

Заключение

Мы рассмотрели базовые сценарии работы с системами Git и Github. Каждая приведенная выше команда имеет значительно больше ключей и соответственно возможностей. Постепенное их изучение даст вам возможность легко оберегать свои иходники и больше концентрироваться непосредственно на разработке.

Отправка первого локального проекта на GitHub

Одна из полезных привычек, которые я в себе последнее время воспитываю - это привычка работать с проектами и использовать Git даже в тех случаях, если проект создан локально и нужен, например, для обучения. Потому как мало ли что может вырасти в будущем даже из небольшого учебного проекта.

Рассмотрим отправку (push) своего первого проекта с локального компьютера в GitHub репозиторий.

Убедитесь, что git отслеживает ваш проект

1. Используя свой терминал (командную строку), зайдите в папку, где хранятся файлы вашего проекта: cd /path/to/my/codebase.

Я использую Cmder и очень доволен данным терминалом. Также, если вы используете для разработки на PHP Open Server, то в нем есть встроенная консоль.

Важно понимать, что в Cmder есть две версии для скачивания и Git есть только в версии Full.

Вы не можете сделать это, просто открыв папку как обычно, вы должны сделать это с помощью командной строки / терминала.

2. Проверьте, инициализирован ли git командой git status.

Вы можете получить такое сообщение об ошибке:

fatal: Not a git repository (or any of the parent directories): .git

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

git init

Если вы получили другое сообщение об ошибке, то внимательно на него посмотрите. Как правило, дополнительные ошибки появляется либо когда git не установлен на вашем компьютере, либо когда вы уже находитесь в папке или подпапке, где инициализируется git.

Если всё нормально, то далее выполните процесс добавления и "фиксации" вашего проекта - команды git add и git commit. Но об этом будем говорить дальше.

Напоминаю, что проверить настройки Git и пользователя в Cmder можно командой:

cat ~/.gitconfig

Тильда - это адрес вашего домашнего каталога.

Проверяем пользователя git локального компьютера

После инициализации Git нельзя удалять папку .git.

Создайте удаленный репозиторий на Github

  1. Войдите в свою учетную запись Github.
  2. В правом верхнем углу любой страницы Github вы должны увидеть значок «+». Нажмите на это, затем выберите 'New Repository' (рус. - Новый репозиторий).
  3. Дайте вашему хранилищу имя - в идеале то же имя, что и у вашего локального проекта. Если я создаю приложение для путешествий, его папка будет называться «travel-app» на моем компьютере, а «travel-app» будет также именем репозитория Github.
  4. Нажмите 'Create Repository' (рус. - Создать репозиторий). Следующий экран, который вы увидите, будет важен, поэтому не закрывайте его.

Подключите локальную папку проекта к вашему пустому хранилищу на Github

Сейчас на сайте github вы видите страницу у которой в заголовке написано: "Quick setup — if you’ve done this kind of thing before".

Скопируйте ссылку в поле формы (input) прямо под заголовком, она должна выглядеть примерно так:

https://github.com/mindplace/test-repo.git

Это веб-адрес (ссылка), который будет использовать ваша локальная папка для отправки содержимого в удаленную папку на Github.

1. Вернитесь к своему проекту в терминале / командной строке.

2. В вашем терминале / командной строке введите:

git remote add origin [скопированная ссылка]

Наш пример:

git remote add origin https://github.com/mindplace/test-repo.git

3. Отправьте (сделайте пуш, push) вашей ветки в Github:

git push origin master

4. Вернитесь к экрану репозитория на Github, который вы только что оставили, и обновите его. Название "Quick setup — if you’ve done this kind of thing before". Название должно исчезнуть, и вы должны увидеть свои файлы в репозитории.

Важное замечание. При создании репозитория на GitHub лучше не ставить галочку в пункт где спрашивается про создание файлы README.md, иначе могут возникнуть проблемы при отправки локальных файлов в репозиторий.

Что лучше сделать перед отправкой локальных файлов

Перед отправкой локальных файлов в удаленный репозиторий лучше всего проиндексировать все файлы нашего нового проекта.

После команды git init мы можем командой git status увидеть, что не все файлы находятся в индексе.

Чтобы проиндексировать все файлы текущей папки мы вводим команду:

git add .

Точка означает текущую папку.

После того как все файлы проиндексированы мы должны закоммитить наши действия, т.е. зафиксировать:

git commit -m "Начало проекта"

Я бы посоветовал делать комментарий не на русском как в примере выше, а на английском. Это будет хорошей привычкой. Т.е. вместо "начало проекта" хорошо бы написать "start project".

Далее командой git status мы проверяем, что всё сделали правильно и видим такой экран:

Перечислю еще несколько полезных команд для работы с Гитом ниже.

git log

Показывает историю коммитов.

git show a67105fe991a8318asfsdfsd3453sdffsdf

Команда выше показывает через хеш коммита какие изменения были произведены.

Как загрузить файлы на удаленный репозиторий. Работа с GitHub

Mariia Kholodnitska 30.07.2019 5 18299 на прочтение 5 минут


Ранее в статьях мы рассматривали как установить, настроить и работать с локальным репозиторием Git. А в этой статье напомним как заливать файлы на удаленный репозиторий и основной функционал и возможности при работе в аккаунте GitHub.

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

Начнем с регистрации на GitHub. Переходим по ссылке https://github.com/, нажимаем на ‘Sign up’ и проходим регистрацию.

После регистрации  перейдем к созданию и настройке репозитория. Кликаем на значок  ‘ +’ и в открытом окне выбираем  ‘New repository’ для создания нового репозитория.

Заполняем поле и добавляем конфигурации к репозиторию.

Note: Возможность использовать приватный репозиторий бесплатно до 5 соавторов. Далее нужно оплачивать по прайсу в зависимости от тарифного плана.

Также Вы можете поставить галочку напротив “Initialize this repository with a README”, чтобы создать файл readme.md. В файле readme.md зачастую пишут общую ознакомитильную информацию о проекте, требования к окружению, что нужно сделать перед установкой, как установить, создатели проекта, документация, ссылки и много другое. Этот файл оформляется на языке разметки Markdown (ознакомится с синтаксисом языка можно на странице GitHub - https://guides.github.com/features/mastering-markdown/ ).

Перейдем к осмотру как залить файлы в удаленный репозиторий.

Если Вы еще не подключили удаленный репозиторий, то делаем это командой:

git remote add test2 URL

где test2 – названия Вашего репозитория, 

URL – URL-адрес Вашего репозитория.

Чтобы посмотреть все подключенные репозитории воспользуйтесь командой:

git remote -v

   Как видим по скрину репозиторий test2 удачно добавился.


     Для подключения можно использовать HTTPS и SSH протоколы. Найти эти поля можно выполнив такие действия: кликаем на иконку с Вашим профилем — Your repositories — и выбираем нужный репозиторий. В открытом окне переходим на ‘Clone or dowland’ и просто копируем  ссылку с поля: соответственно либо HTTPS либо SSH доступом. Как Вы поняли по названию, эту ссылку можно использовать и в других целях, например, для клонирования репозитория.

Выбираем нужный протокол, для использования SSH нужно сгенерировать и добавить  SSH keys, как это делать можно узнать в нашей статье ‘Генерация и добавления SSH ключа для подключения к удаленному репозиторию GitHub’.

 

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

Для этого нужно воспользоваться командой:

git push URL

Переходим на GitHub и видим, что все наши файлы удачно переместились.

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

Если Вы ведете свой проект на GitHub, значит у Вас есть актуальная текущая версия своего проекта под рукой.Ну конечно же, если дело идет о Хостинге, лучше хранить свои данные не в одном месте и всегда иметь резервные копии. На любом тарифе

Как сунуть уже готовый проект в репозиторий? — Хабр Q&A

сам попробовал наскоком изучить, получилось не очень хорошо, делали совместный проект, народ просил не пушить меня некоторое время код, а почему, я только месяц назад понял, когда шаг за шагом прочитал учебник по гиту https://git-scm.com/book/ru/v2

по IDE, думаю во всех современных такая опция есть, я пользую IDEA https://www.jetbrains.com/idea/ тут хорошо реализовано

после прочтения учебника использую пока только терминал

резюме: рекомендую потихоньку выучить основы по учебнику и затем совершенствоваться
в качестве бонуса: есть бесплатный хороший видео-курс https://geekbrains.ru/courses/66

теперь собственно по сабжу: путем некоторых экспериментов с потерей и восстановлением кода пришел к такой последовательности:

открываем Terminal в нужной папке с проектом и затем вводим последовательно команды:

git init git add --all git commit -a -m 'first commit' git remote add origin https://github.com/user/project.git !! поменять https на свой линк на репозиторий git pull --rebase origin master git push origin master

Как добавить файлы и папки в репозитории GitHub?

вы можете добавлять файлы с помощью git add, например git add README, git add <folder>/*, или даже git add *

затем использовать git commit -m "<Message>" для фиксации файлов

наконец-то git push -u origin master для нажимаем файлы.

когда вы делаете изменения run git status который дает вам список измененных файлов, добавьте их с помощью git add * для всего или вы можете указать каждый файл по отдельности, то git commit -m <message> и наконец, git push -u origin master

пример-скажем, вы создали файл README, запустив git status дает вам

$ git status # On branch master # Untracked files: # (use "git add <file>..." to include in what will be committed) # # README 

выполнить git add README, файлы расположены для фиксации. Затем запустите git status опять же, он должен дать вам-файлы были добавлены и готовы к фиксации.

$ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # new file: README # nothing added to commit but untracked files present (use "git add" to track) 

затем запустите git commit -m 'Added README'

$ git commit -m 'Added README' [master 6402a2e] Added README 0 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 README 

наконец, git push -u origin master нажать на удаленную ветку master для репозитория origin.

$ git push -u origin master Counting objects: 4, done. Delta compression using up to 2 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 267 bytes, done. Total 3 (delta 1), reused 0 (delta 0) To [email protected]:xxx/xxx.git 292c57a..6402a2e master -> master Branch master set up to track remote branch master from origin. 

файлы были успешно перемещены в удаленный репозиторий.

под управлением git pull origin master чтобы убедиться, что вы впитали любые изменения вверх по течению

$ git pull origin master remote: Counting objects: 12, done. remote: Compressing objects: 100% (4/4), done. remote: Total 8 (delta 4), reused 7 (delta 3) Unpacking objects: 100% (8/8), done. From xxx.com:xxx/xxx * branch master -> FETCH_HEAD Updating e0ef362..6402a2e Fast-forward public/javascript/xxx.js | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 README 

если вы не хотите объединять восходящие изменения с локальным репозиторием, запустите git fetch чтобы получить изменения, а затем git merge для слияния изменений. git pull это просто комбинация fetch и merge.

я лично использовал gitimmersion -http://gitimmersion.com/ чтобы добраться до кривой на git, ее пошаговое руководство, если вам нужна документация и помощь

Как загружать файлы на GitHub

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Добавление файла в репозиторий

Документы GitHub
  • Все продукты
  • GitHub.com
    • Начиная
      • Быстрый старт
        • Настроить Git
        • Создать репо
        • Форк репо
        • Быть социальным
      • Изучение GitHub
        • Продукты GitHub
        • Изучение выпусков раннего доступа с предварительным просмотром функций
        • Типы аккаунтов GitHub
        • Часто задаваемые вопросы об изменениях в планах GitHub
        • GitHub CLI
        • GitHub Desktop
        • GitHub для мобильных устройств
        • Разрешения на доступ на GitHub
        • Глоссарий GitHub
        • Шпаргалка по Git
        • Учебные ресурсы Git и GitHub
      • Регистрация на GitHub
        • Регистрация новой учетной записи GitHub
        • Подтверждение адреса электронной почты
        • Настройка пробной версии GitHub Enterprise Cloud
        • Настройка пробной версии GitHub Enterprise Server
      • Изучение проектов на GitHub
        • Поиск способов внести свой вклад в открытый исходный код на GitHub
        • Сохранение репозиториев со звездочками
        • Следуя за людьми
      • Использование GitHub
        • Поддерживаемые браузеры
        • Устранение проблем с подключением
        • Горячие клавиши
    • Учетные записи пользователей
      • Управление настройками учетной записи пользователя
        • О вашей личной панели
        • Изменение вашего имени пользователя GitHub
        • Объединение нескольких учетных записей пользователей
        • Превращение пользователя в организацию
        • Удаление вашей учетной записи
.

Добавление файла в репозиторий с помощью командной строки

Документы GitHub
  • Все продукты
  • GitHub.com
    • Начиная
      • Быстрый старт
        • Настроить Git
        • Создать репо
        • Форк репо
        • Быть социальным
      • Изучение GitHub
        • Продукты GitHub
        • Изучение выпусков раннего доступа с предварительным просмотром функций
        • Типы аккаунтов GitHub
        • Часто задаваемые вопросы об изменениях в планах GitHub
        • GitHub CLI
        • GitHub Desktop
        • GitHub для мобильных устройств
        • Разрешения на доступ на GitHub
        • Глоссарий GitHub
        • Шпаргалка по Git
        • Учебные ресурсы Git и GitHub
      • Регистрация на GitHub
        • Регистрация новой учетной записи GitHub
        • Подтверждение адреса электронной почты
        • Настройка пробной версии GitHub Enterprise Cloud
        • Настройка пробной версии GitHub Enterprise Server
      • Изучение проектов на GitHub
        • Поиск способов внести свой вклад в открытый исходный код на GitHub
        • Сохранение репозиториев со звездочкой
.

Как загрузить проект на Github

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

Как загружать папки на GitHub

Переполнение стека
  1. Около
  2. Товары
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Добавление существующего проекта в GitHub с помощью командной строки

Документы GitHub
  • Все продукты
  • GitHub.com
    • Начиная
      • Быстрый старт
        • Настроить Git
        • Создать репо
        • Форк репо
        • Быть социальным
      • Изучение GitHub
        • Продукты GitHub
        • Изучение выпусков раннего доступа с предварительным просмотром функций
        • Типы аккаунтов GitHub
        • Часто задаваемые вопросы об изменениях в планах GitHub
        • GitHub CLI
        • GitHub Desktop
        • GitHub для мобильных устройств
        • Разрешения на доступ на GitHub
        • Глоссарий GitHub
        • Шпаргалка по Git
        • Учебные ресурсы Git и GitHub
      • Регистрация на GitHub
        • Регистрация новой учетной записи GitHub
        • Подтверждение адреса электронной почты
        • Настройка пробной версии GitHub Enterprise Cloud
        • Настройка пробной версии GitHub Enterprise Server
      • Изучение проектов на GitHub
        • Поиск способов внести свой вклад в открытый исходный код на GitHub
        • Сохранение репозиториев со звездочками
        • Следуя за людьми
      • Использование GitHub
        • Поддерживаемые браузеры
        • Устранение проблем с подключением
        • Горячие клавиши
    • Учетные записи пользователей
      • Управление настройками учетной записи пользователя
        • О вашей личной панели
        • Изменение вашего имени пользователя GitHub
        • Объединение нескольких учетных записей пользователей
        • Превращение пользователя в организацию
        • Удаление вашей учетной записи
        • Уровни разрешений для репозитория учетных записей пользователей
        • Уровни разрешений для пользовательских досок проектов
.

Смотрите также