Подтвердить что ты не робот

Каков наилучший способ работы с Github и несколькими компьютерами?

Я разрабатываю программное обеспечение для оценки школы и решил использовать Github для размещения проекта. После того, как я построил код в своем ящике Ubuntu, я подтолкнул его в Github, а затем клонировал его на свой MacBook Pro. После редактирования кода на MBP я вернул его в Github. На следующее утро я попытался обновить свое репо в ящике Ubuntu с помощью git pull, и это дало мне всевозможные проблемы.

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

4b9b3361

Ответ 1

Я предполагаю, что ваша проблема заключалась в том, что машина, на которой вы впервые создали репо, исчезла, когда вы пытались выполнить команду git pull.

Когда вы клонируете существующий репозиторий git (например, на втором компьютере MacBook Pro), вы автоматически настроите так, чтобы ваши команды git pull автоматически объединили пульт с локальными изменениями.

Однако, когда вы сначала создаете репо и затем делитесь им в удаленном репозитории, вам нужно выпустить несколько команд, чтобы сделать такие вещи автоматическими, как клонированное репо.

# GitHub gives you that instruction, you've already done that
# git remote add origin [email protected]:user_name/repo_name.git

# GitHub doesn't specify the following instructions
git config branch.master.remote origin
git config branch.master.merge refs/heads/master

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

Ниже приводится немного бесстыдной саморекламы. Если вы используете Ruby, я создал инструмент на основе Ruby, который позволяет обрабатывать все эти вещи с помощью удаленных ветвей git. Инструмент называется, неудивительно, git_remote_branch: -)

Если вы не используете Ruby, мой инструмент, вероятно, будет слишком сложным для установки. Что вы можете сделать, это посмотреть старое сообщение в моем блоге, где большая часть материала grb может сделать для вас, была явно показана. Извлеките файл заметок git: -)