2017-02-10 42 views
3

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

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

  1. Как перенести эти изменения в мой собственный локальный репозиторий?

  2. Нужно ли фиксировать и вносить эти изменения в мою поэтапную область?

Спасибо!

ответ

0

зафиксировать и нажать свою рабочую ветку. Затем выполните слияние из основной ветки в вашу ветку. Обеспечьте создание и разрешение любых конфликтов. зафиксировать и нажать свою ветку. Теперь объедините свою ветку в основную ветку, и она должна работать.

8

Просто добавьте новый пульт дистанционного управления (скажем, other) в ваш own репо. Затем Pull other/<branch> изменяет вашу локальную ветку (скажем, add-other-changes). Нажмите на свое собственное разветвленное репо (origin/add-other-changes). Теперь, когда вы закончили с веткой add-other-changes, создайте запрос Pull & Объединитесь с origin/master.

  • Вытащите изменения другого репо в свой собственный репозиторий:

    # go into your own repo 
    $ git remote add other <other-student-repo-url> # add a new remote with other's repo URL 
    
    $ git fetch other  # sync/update local with other's repo 
    
    $ git checkout -b add-other-changes  # create a new branch named 'add-other-changes'      
    $ git pull other <specific-branch-name> # pull other/<branch> changes   
    
    $ git push origin HEAD # push changes to your own(origin) forked repo `add-other-changes` branch 
    
+0

Отлично! Спасибо :) –

+0

сейчас, что сделано, как отслеживать изменения других учеников? –

+0

'git fetch other 'обновит ваши локальные изменения в репозитории другого учащегося. Если вам нужны какие-либо конкретные изменения ветвления, просто потяните его 'git pull other '. –

0

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

Как только это будет сделано, когда участники проекта захотят узнать, есть ли новые изменения на пульте дистанционного управления, они могут делать git remote update или чаще git fetch origin.

Если вы работаете на одной и той же отрасли, и вы хотите обновить свою локальную ветку с удалённой git pull origin <branh_name>

Если один были внесены изменения, которые должны получить общие:

git add file_path_1 file_path_2 directory_path1 ... 
git commit -m "<your brief message>" 
git push origin <branch_name> 

 Смежные вопросы

  • Нет связанных вопросов^_^