Я создал репозиторий на GitHub и теперь хочу зафиксировать изменения в этом репозитории с помощью Git. У меня есть файловая структура проекта (созданная с помощью Heroku) для фиксации. Какие шаги необходимы, чтобы связать существующий репозиторий GitHub с Git?
В прошлом я использовал пользовательский интерфейс «GitHub для Windows» для создания репозитория GitHub. Это создает файловую структуру на моем компьютере, и когда я обновляю файловую структуру, изменения распознаются.
Но эта новая настройка немного отличается тем, что проект уже существует, и я хочу связать его в новый репозиторий GitHub.
Вам нужно добавить новый пульт, указывающий на GitHub, а затем нажать на него. Шаги:
-
Создайте репозиторий на GitHub, без README, полностью пустой.
-
В вашем существующем репозитории:
git remote add REMOTENAME URL
. Вы можете назвать удаленныйgithub
, например, или как угодно другое. Скопируйте URL-адрес со страницы GitHub только что созданного репозитория. -
Нажмите из существующего репозитория:
git push REMOTENAME BRANCHNAME
. Например, если вы назвали свой удаленныйgithub
и хотите передать ему мастер, вы должны выполнитьgit push github master
.
Дайте мне знать, если вам что-нибудь понадобится.
Как связать репозитории Git?
Как связать вместе два репозитория Git?
Я управлял проектом в локальном репозитории Git и теперь хочу «опубликовать» его на GitHub.
Я создал соответствующее репозиторий GitHub и знаю, что могу легко клонировать его локально, скопировать файлы из старого репозитория и затем зафиксировать, но я хотел бы сохранить свою локальную историю. Можно ли связать мой локальный репозиторий Git с этим новым репозиторием на GitHub и отправить туда всю мою историю, и если да, то как мне это сделать?
Пока Mtak’s ответ правильный для более старых версий Git, более новые версии Git будут работать следующим образом.
Первым шагом все равно будет:
git remote добавить источник git @ github. com/UserName/Repository
Затем — на случай, если вы работали над другими ветвями — я бы порекомендовал переключиться на локальную ветвь master
, например это:
git checkout master
После этого просто запустите эту команду «push»:
git push
В некоторых случаях вам может потребоваться принудительно выполнить этот «push» с помощью -f
флаг вроде этого:
git push -f
Но для первого нажатия вам может потребоваться выполнить такую команду, чтобы установите исходное значение «origin», а также «push»:
git push --set-upstream origin master
И опять же, в случае, если вам нужно принудительно выполнить это «нажатие», просто выполните ту же команду, но с флагом -f
следующим образом:
git push -f --set-upstream origin master
И если у вас есть другие ветки в вашем локальном репозитории, которые вы хотели бы нажать на «origin», вам может потребоваться просто запустить это такая же запятая nd с новым именем ветки. Например, у вас есть ветка с именем «develop», вам просто нужно проверить эту ветку следующим образом:
git checkout develop
А затем установите исходное значение «origin» для «develop» следующим образом:
git push --set-upstream origin develop
Вы можете добавить репозиторий Github в качестве удаленного репозитория с помощью команды:
git remote add origin git@github.com/UserName/Repository
А затем нажмите репозиторий, используя:
git push origin master
Это сохранит всю историю вашего текущего локального репозитория и отправит ее в Github.
origin
— это стандартное имя де-факто для удаленного репозитория, если он у вас только есть. Вы можете назвать это как-нибудь иначе.