Дополнительно
Как создать удаленную ветку Git?
Я создал локальную ветку, которую хочу 'продвинуть' вверх по течению. На Stack Overflow есть похожий вопрос о том, как отслеживать только что созданную удаленную ветку.
Однако мой рабочий процесс немного отличается. **Сначала я хочу создать локальную ветку, и я буду продвигать ее вверх по течению только тогда, когда буду удовлетворен и захочу поделиться своей веткой.
- Как мне это сделать? (мой поиск в google ничего не дал).
- Как мне сказать моим коллегам, чтобы они взяли его из репозитория upstream?
UPDATE В Git 2.0 есть более простой ответ Я написал ниже: https://stackoverflow.com/a/27185855/109305.
3021
19
Сначала вы создаете свою ветку локально:
Удалённая ветка создаётся автоматически, когда вы переносите её на удалённый сервер. Поэтому, когда вы почувствуете, что готовы к этому, вы можете просто сделать:
Где `
- это обычно
origin`, имя, которое git даёт удалённой ветке, с которой вы клонировали. Затем ваши коллеги просто потянут эту ветку, и она автоматически будет создана локально.Обратите внимание, что формально формат такой:
Но когда вы опускаете одно из них, предполагается, что имена обоих ответвлений одинаковы. Сказав это, в качестве осторожного слова, не совершайте критическую ошибку, указывая только
:
(с двоеточием), иначе удаленная ветвь будет удалена!Чтобы последующий
git pull
знал, что делать, вы можете вместо этого использовать:Как описано ниже, опция
--set-upstream
устанавливает восходящую ветвь:Во-первых, вы должны создать свою ветвь локально
После этого вы можете работать локально в своей ветке, когда вы будете готовы поделиться веткой, вытолкните ее. Следующая команда переместит ветку в удаленный репозиторий origin и отследит ее
Участники команды могут получить доступ к вашей ветке, выполнив:
Вы можете продолжать работать в ветке и толкать ее, когда захотите, не передавая аргументов git push (git push без аргументов будет толкать master в удаленный master, your_branch local в удаленный your_branch и т.д.).
Участники команды могут выполнять push в вашу ветку, делая коммиты, а затем выполнять push явно
Или отслеживать ветку, чтобы избежать аргументов для git push
Простое решение ГИТ 2.0+:
По состоянию на мерзавец 2.0 поведение стало проще:
Вы можете настроить Git с
толчок.по умолчанию = текущей
чтобы сделать жизнь легче:Я добавил Это, поэтому теперь я могу только подтолкнуть новую ветку вверх с
ключ
-U
отслеживает удаленный филиал одноименным названием. Теперь с этой конфигурацией вы автоматически угадать удаленная ссылка на Git толчок. Из ГИТ.конфиг документации:Для меня, это хорошее упрощение мою повседневную работу с Git. Настройка конфигурации заботится о 'обычных' случае использование, где вы добавить филиал локально и хотите создать его удаленно. Кроме того, я могу так же легко создавать локальные ветки из пультов, просто делаешь
со remote_branch_name ГИТ
(а не с помощью `--комплект-вверх по течению-флаг).Я знаю, что этот вопрос и принял ответ довольно старые, но поведение изменилось так, что теперь существует вариантов настройки, чтобы сделать ваш рабочий процесс проще.
Чтобы добавить на глобальную конфигурацию git, выполните в командной строке:
Как указано в предыдущих ответах,
достаточно для продвижения локальной ветки.
Ваши коллеги, с помощью этой команды, могут толкать все удаленные ветки (включая новые):
Затем, чтобы внести изменения в ветку, обычный поток:
Создать новую ветку локально на основе текущей ветке:
Фиксация любых изменений, как обычно. Затем, толкайте ее вверх:
Это ярлык, чтобы подтолкнуть текущей ветки в ветку с тем же названием на "происхождение" и отслеживать его, так что вы Дон'т нужно указывать происхождение руководителем в будущем.
Если вы хотите создать ветку от текущей ветви
вы хотите, чтобы ветку из удаленного филиала, вы можете попробовать
Если вы закончите изменения, можно добавить файл.
Затем сделайте коммит локально
Если вы хотите, чтобы подтолкнуть к удаленному РЕПО
Все вместе будет
или Если вы хотите создать ветку из удаленного филиала говорят, развития
ГИТ кассе -б bug_fixes происхожденияразвития
Вы можете нажать на ветку в удаленный РЕПО
В любое время вы хотите обновить вашу ветку от любой другой ветке говорят мастер.
ГИТ тянуть происхождения мастер
.Если ты хочешь на самом деле просто создать удаленный филиал, не имея локальный, вы можете сделать это так:
Это толкает, что твоя голова на ветку фу, что не существует на удаленном.
Простое решение... Драмма катит... версий Git 2.10.1 (Яблоко ГИТ-78)
Б. Н. - ветке вы только что создали в вашей локальной среде, а пульт не существующие отрасли, где вы пытаетесь давить, должны иметь одинаковое имя.
Сначала вы создаете ветку локально:
А потом создать ветку удаленно:
Примечание: это работает на версии новинки ЖКТ:
Ура!
Нажимаем ветку на GitHub :
Когда вы хотите совершить что-то в вашей ветке, будьте уверены, чтобы быть в вашей ветке.
Вы можете увидеть все филиалов, созданных с помощью :
Который будет показывать :
Добавить новый пульт дистанционного управления для вашего филиала :
Толчок изменения из коммита, в вашей ветке :
Обновление вашей ветке, когда оригинальную ветку из официального репозитория обновился :
Затем необходимо применить для слияния изменений, если ветвь образована от разработки, что вам нужно сделать :
Удалять ветку на локальной файловой системе :
Принудительное удаление из местного отделения на вашу файловую систему :
Удалить ветку на GitHub :
Вот Все
Другое существующего проекта
Создание местного отделения от существующей ветке (может быть мастер/ разработка/ любой-другой-филиал).
Толкают в
Здесь
Если мы убираем локальные и удаленные имена ветвь, она будет иметь формат
Это будет толкать местного отделения в отдаленных и с таким же именем, как местное отделение branch_name. Местное отделение будет отслеживание удаленной ветки, а также.
Я знаю этот вопрос хорошо ответили, но просто хотел перечислить шаги, которые я предпринять, чтобы создать новую ветку "и myNewBranch" и нажать на пульт (и"происхождение" и; в моем случае) и настроить отслеживание. Считайте, что это и"ах и" Версия :)
Теперь с Git, вы можете просто ввести, когда вы находитесь в правильной ветке
толчок ГИТ-комплект-вверх по течению происхождения <удаленного филиала-имя в
>и Git создать для вас ветку Origin.
Вы можете сделать это в 2 круч:
1. Используйте
кассе
для создания местного отделения:2. Использовать команды Push для автосоздания филиала и отправить код на удаленный репозиторий:
Просто хотел добавить, что во время:
Создает новую ветвь, она также проверяет, что филиал / делает ее вашей текущей веткой. Если, по какой-то причине, все, что вы хотите сделать, это обрывать ветки, но не делает ее текущей ветке, то вы должны использовать следующую команду:
В первой команде "в кассу", которая делает упомянутую ветку вашу текущую ветку, и " Б" и означает: эта ветка не'т существуют еще, так что это для меня.
Как это сделать через Источник дерева
git толчок -U в <удаленные-имя> <филиал-имя>
Не'т работать, если вновь созданный филиал не'т выйти из того же репозитория, т. е. если вы не'т создал новую ветку, используяГИТ кассе -б new_branch
, то это не будет работать.Например, у меня были клонированы два разных хранилища локально и мне пришлось копировать repo2/branch1, равная в repo1/ а потом уж толкать его.
Это Ссылка помогла мне продвинуть мою локальную ветку (клонировал с другого РЕПО) в мой удаленный РЕПО:
Вот как вы делаете это в Eclipse через Эгит.
Зайдите в "git-репозиторий знакомства на" посмотреть и expland проект Git, для которого вы хотите создать ветку. В отделениях -> местные .. выбрать филиал, для которого вы хотите создать ветку ( в моем случае я выбрал мастер .. вы можете выбрать другую другой ветке, если хотите) .. потом правой кнопкой мыши и нажмите на Создать ветке параметр .. и выберите оформить этот проект вариант и нажмите кнопку Готово.
Теперь у окне проекта выберите проект .. правой кнопкой мыши, затем команду -и GT; нажмите филиал.
Новый удаленный филиал будет создан. Вы можете дать название ветки для ваших коллег, так что они могут тянуть его.
Я использую это, и это довольно удобно:
Вы Don't даже нужен состояния ЖКТ; может быть, я просто хочу, чтобы убедиться, что все идет хорошо...
Вы можете иметь как локальный, так и удаленный филиал с помощью одной команды.