2010-11-30 7 views
79

Я разветвил проект на github, внесли некоторые изменения, пока все хорошо.Как синхронизировать с удаленным репозиторием Git?

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

ответ

61

git pull Обычно достаточно, но я не уверен, что макет вы выбрали (или выбран github для вас).

53

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

git remote add origin https://github.com/<github-username>/<repo-name>.git 
git pull origin master 

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

git push origin master 
+0

добавления работал, притягивая не :(, я получил ошибку, связанную с https: ошибка: Протокол HTTPS не поддерживается или отключено в libcurl при доступе к https://github.com/mrdoob/three.js.git/info/refs фатальный: запрос HTTP не выполнен Подсказки? – 2010-11-30 11:32:49

+0

Какая платформа? Похоже, что одна из зависимостей git не является mplete. – 2010-11-30 11:39:21

+0

В качестве работы вы также можете использовать протокол git, а не https, например. git remote set-url git: //github.com/mrdoob/three.js.git - затем попробуйте git pull. – 2010-11-30 11:43:18

4

Вам необходимо добавить оригинальный репозиторий (тот, который вы раздвоили) в качестве пульта.

git remote add github (clone url for the orignal repository)

Затем вам нужно внести изменения в локальный репозиторий

git fetch github

Теперь вы будете иметь все ветви исходного репозитория в вашей локальной. Например, главная ветка будет github/master. С этими филиалами вы можете делать все, что захотите. Слейте их в свои филиалы и т. Д.

38

Вы должны добавить исходное репо как вверху.

Это все хорошо описано здесь: https://help.github.com/articles/fork-a-repo

git remote add upstream https://github.com/octocat/Spoon-Knife.git 
git fetch upstream 
git merge upstream/master 
git push origin master 
-5

Для Linux:

git add * 
git commit -a --message "Initial Push All" 
git push -u origin --all 
Смежные вопросы