Как вставить новую локальную ветку в удаленный репозиторий Git и отследить ее тоже?

Для чисел, у которых нет разделителя тысяч, мне нравится это простое компактное регулярное выражение:

\d+(\.\d{2})?|\.\d{2}

или, не ограничиваясь точностью 2:

\d+(\.\d*)?|\.\d+

Последний соответствует 1 100 100. 100.74 100.7 0.7 .7 .72

И он не соответствует пустой строке (например, \ d *.? \ d * would)

4073
задан joat7 9 February 2019 в 01:29
поделиться

5 ответов

Можно сделать это в 2, погружается:

1. Использование checkout для создают локальное ответвление:

git checkout -b yourBranchName

Работа с Вашим Ответвлением, как Вы хотите.

2. Использование эти push команда, чтобы автосоздать ответвление и отправить код в удаленный репозиторий:

git push -u origin yourBanchName

существуют mutiple способы сделать это, но я думаю, что этот путь действительно прост.

0
ответ дан Javier C. 4 October 2019 в 06:59
поделиться

Продвигать новый локальный репозиторий мерзавца в удаленный репозиторий мерзавца:

  1. Создают репозиторий мерзавца на github
  2. От Вашего локального репозитория, сделайте:
    1. git init
    2. git remote add origin <YOUR_GIT_REPO>
    3. git push -u origin master
0
ответ дан 17 December 2019 в 16:00
поделиться

До появления git push -u не существовало опции git push для получения желаемого. Приходилось добавлять новые конфигурационные утверждения.

Если вы создаете новую ветку с помощью:

$ git checkout -b branchB
$ git push origin branchB:branchB

Вы можете использовать команду git config, чтобы не редактировать напрямую файл .git/config.

$ git config branch.branchB.remote origin
$ git config branch.branchB.merge refs/heads/branchB

Или вы можете вручную отредактировать файл .git/config, чтобы иметь информацию об отслеживании для этой ветки.

[branch "branchB"]
    remote = origin
    merge = refs/heads/branchB
150
ответ дан 17 December 2019 в 16:00
поделиться

edit Устарело, просто используйте git push -u origin $BRANCHNAME


Используйте git publish-branch из miscellaneous Git tools Уильяма (gitorious repo и clone).

ОК, никакого Ruby, поэтому - игнорируя меры предосторожности! - возьмите последние три строки скрипта и создайте bash-скрипт, git-publish-branch:

#!/bin/bash
REMOTE=$1 # Rewrite this to make it optional...
BRANCH=$2
# Uncomment the following line to create BRANCH locally first
#git checkout -b ${BRANCH}
git push ${ORIGIN} ${BRANCH}:refs/heads/${BRANCH} &&
git config branch.${BRANCH}.remote ${REMOTE} &&
git config branch.${BRANCH}.merge refs/heads/${BRANCH}

Затем выполните git-publish-branch REMOTENAME BRANCHNAME, где REMOTENAME - это обычно origin (вы можете изменить скрипт, чтобы он принимал origin по умолчанию и т.д.)

23
ответ дан 17 December 2019 в 16:00
поделиться

Предположим, что вы уже клонировали проект, например:

git clone http://github.com/myproject.git
  1. Затем в вашей локальной копии создайте новую ветку и проверьте ее:

    git checkout -b 
    
  2. Предположим, что вы сделали "git bare --init" на вашем сервере и создали myapp.git, вы должны:

    git remote add origin ssh://example.com/var/git/myapp.git
    git push origin master
    
  3. После этого пользователи должны иметь возможность

    git clone http://example.com/var/git/myapp.git
    

ПРИМЕЧАНИЕ: Я предполагаю, что ваш сервер запущен и работает. Если это не так, это не будет работать. Хорошее руководство находится здесь.

ADDED

Добавить удаленную ветвь:

git push origin master:new_feature_name

Проверить, все ли хорошо (получить origin и список удаленных ветвей):

git fetch origin
git branch -r

Создать локальную ветвь и отслеживать удаленную ветвь:

git checkout -tb new_feature_name origin/new_feature_name

Обновить все:

git pull
30
ответ дан 17 December 2019 в 16:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: