Как загрузить ветку с git? (4)

Git clone и cd в имени репо:

$ git clone https://github.com/PabloEzequiel/iOS-AppleWach.git Cloning into "iOS-AppleWach"... $ cd iOS-AppleWach

Перейдите на ветку (страница GitHub), которую я хочу:

$ git checkout -b gh-pages origin/gh-pages Branch gh-pages set up to track remote branch gh-pages from origin. Switched to a new branch "gh-pages"

И потяните ветку:

$ git pull Already up-to-date.

$ ls index.html params.json stylesheets

У меня есть проект на GitHub. Я создал ветку на одном компьютере, а затем переместил мои изменения в github с помощью

Git push origin branch-name

Теперь я на другом компьютере, и я хочу загрузить эту ветку. Поэтому я попробовал:

Git pull origin branch-name

Но все это означало переписывание моей ветви мастера изменениями в моей новой ветке.

Что мне нужно сделать, чтобы правильно потянуть мою удаленную ветку?

$ git clone https://github.com/lukeredpath/LRResty.git $ cd LRResty

Проверьте, какая ветка вы используете в данный момент (она должна быть главной ветвью):

$ git branch * master

Проверьте ветку, которую вы хотите, в моем случае она называется «arcified»:

$ git checkout -b arcified origin/arcified Branch arcified set up to track remote branch arcified from origin. Switched to a new branch "arcified"

Подтвердите, что вы используете ветку, которую хотите:

$ git branch * arcified master

Если вы хотите позже обновить код, запустите git pull:

$ git pull Already up-to-date.

Перейдите в папку на новой машине, которую вы хотите загрузить с git на git bash.

Используйте нижеприведенную команду для загрузки кода из любой отрасли, которая вам нравится

git clone "git ssh url" -b "Branch Name"

Он загрузит соответствующий код ветвления.

Я клонировал его в локальную копию, используя Eclipse EGit.

Затем я создал ветвь в исходном репозитории git на сервере.

Как скопировать ветку в мою локальную копию с помощью Eclipse EGit?

Когда я открываю Git Repositories внутри EGit, я вижу:

Local -- master - Remote Tracking -- origin/development -- origin/master

Как я могу получить происхождение / развитие в моем местном использовании с помощью EGit?

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

Второй вопрос – где команда pull внутри EGit? Мне удалось найти команду fetch, но когда я запустил ее, она говорит, что ничего не нужно. RefSpec:

Refs/heads/*:refs/remotes/origin/*

Третий вопрос – есть ли способ обработать команды git из командной строки внутри Eclipse в моей системе Windows? Я думал о попытке сделать вывод из командной строки, но я не могу найти его в своей локальной системе.

Ваша выборка обновлена, потому что у вас уже есть все, скопированные в локальный репозиторий. Притяжение объединит origin/development в мастера, чего вы не хотите. Вы хотите создать новую ветку с origin/development в качестве отправной точки. Я не знаю, как это сделать с помощью egit, но в командной строке вы выполните:

Git checkout -b development origin/development

Я также искал несколько часов, чтобы узнать, как получить удаленную ветвь в Eclipse EGit …

Решение изложено в этом Bugreport . И это очень просто, если вы знаете, как это сделать – не нужно использовать версию командной строки git, которая, даже если она работает в 99% всех случаев, может быть рискованной, поскольку у меня уже были проблемы, которые она мешала Eclipse и EGit.

Просто выполните следующие действия:

  1. Сначала убедитесь, что вы открыли представление EGit Repository view . Если вы еще не открыли его, перейдите в «Window → Show View → Other …» и оттуда выберите «Git → Git Repositories».
  2. В представлении « Repository view выберите «Филиалы → Удаленное отслеживание». Вы должны увидеть там свои удаленные ветви (пример: origin/new_feature).
  3. Щелкните правой кнопкой мыши на удаленной ветке, которую вы хотите иметь с локальными ветвями. Выберите «Создать ветвь» …
  4. Значения по умолчанию должны быть в порядке. Обычно вы ничего здесь не должны менять. Обратите внимание, что вы не должны изменять стратегию «Потянуть» на что-то другое, чем «Объединить», если вы не знаете, что делаете. В противном случае вытягивание изменений в восходящем потоке может привести к потере данных.
  5. Нажмите «ОК», и вы закончите 🙂

Я столкнулся с той же проблемой, и вот как я ее решил:

    Open Git Perspective

    Сначала у вас должна быть ветка, которую вы хотите проверить, в вашем репозитории под удаленным отслеживанием . Моя проблема заключалась в том, что я не мог видеть удаленную ветку здесь, поэтому, чтобы решить эту проблему – выполните Pull on the repository, и эта команда должна предоставить вам все ветки под удаленным отслеживанием

  1. щелкните правой кнопкой мыши (удаленный) Branch, Check Out, проверьте как новое локальное ветвь

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

Создаем и проталкиваем новую ветку

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

Root@user: git checkout -b new_feature

Второй, аналогичный первому, но в две строки:

Root@user: git branch new_feature root@user: git checkout new_feature

Готово. Новая ветка создана в локальном репозитории и в нее включены все локальные изменения. И мы переключились на новую локальную ветку . Можем создать коммит и протолкнуть новую ветку в удаленный репозиторий:

Root@user: git commit -m "new feature" root@user: git push origin new_feature

Где origin — название вашего удаленного репозиторий (origin — значение по умолчанию при клоне проекта), new_feature — название вашей новой ветки.

Затягиваем новую ветку из удаленного репозитория

Созданная нами ветка уже находится в удаленном репозитории и теперь нам нужно изолированно ее затянуть из репы. Если сделать просто pull , то новая ветка не подтянется. Если сделать просто git pull origin new_feature, то ветка сольется с веткой master. Поэтому делаем следующую последовательность:

Root@user: git fetch root@user: git checkout -b new_feature root@user: git pull origin new_feature

На первой строке с помощью команды git fetch смотрим есть ли новые ветки, при этом загрузка удаленных изменений не происходит. Второй строкой создает локальную ветку с наким же названием и переключаемся на нее. В конец, на третьей строке, затягиваем удаленные изменения в новую ветку. Система предложить сделать merge-commit.



Как загрузить ветку с git? (4)

У меня есть проект на GitHub. Я создал ветку на одном компьютере, а затем переместил мои изменения в github с помощью

Git push origin branch-name

Теперь я на другом компьютере, и я хочу загрузить эту ветку. Поэтому я попробовал:

Git pull origin branch-name

Но все это означало переписывание моей ветви мастера изменениями в моей новой ветке.

Что мне нужно сделать, чтобы правильно потянуть мою удаленную ветку?

Git clone и cd в имени репо:

$ git clone https://github.com/PabloEzequiel/iOS-AppleWach.git Cloning into "iOS-AppleWach"... $ cd iOS-AppleWach

Перейдите на ветку (страница GitHub), которую я хочу:

$ git checkout -b gh-pages origin/gh-pages Branch gh-pages set up to track remote branch gh-pages from origin. Switched to a new branch "gh-pages"

И потяните ветку:

$ git pull Already up-to-date.

$ ls index.html params.json stylesheets

$ git clone https://github.com/lukeredpath/LRResty.git $ cd LRResty

Проверьте, какая ветка вы используете в данный момент (она должна быть главной ветвью):

$ git branch * master

Проверьте ветку, которую вы хотите, в моем случае она называется «arcified»:

$ git checkout -b arcified origin/arcified Branch arcified set up to track remote branch arcified from origin. Switched to a new branch "arcified"

Подтвердите, что вы используете ветку, которую хотите:

$ git branch * arcified master

Если вы хотите позже обновить код, запустите git pull:

$ git pull Already up-to-date.

Перейдите в папку на новой машине, которую вы хотите загрузить с git на git bash.

Используйте нижеприведенную команду для загрузки кода из любой отрасли, которая вам нравится

git clone "git ssh url" -b "Branch Name"

Он загрузит соответствующий код ветвления.

// echo get_the_post_thumbnail(get_the_ID(), "relatedthumbnail"); // вывожу свой размер миниатюры?>

Иногда при работе с локально и удаленной веткой нам требуется их удалять. Например эта ветка отдельной функциональности которая уже слита в develop или master. Или это ветка для устранения багов. Давайте посмотрим как можно легко и быстро удалять локальные (local) и удаленные (remote) ветки.

Быстрый ответ — финальное резюме

$ git push -d $ git branch -d

Замечу, что в большинстве случаев удаленный репозиторий записан как origin .

Удаляем локальную ветку

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

$ git branch -d branch_name $ git branch -D branch_name

Пояснение: ключ -d это ярлык команды --delete , которая удаляет ветку, только если последняя полностью смержена в ее upstream ветку. Можно также использовать команду -D , которая является алиасом команды --delete --force , которая удаляет ветку «невзирая на ее мерж статус» (независимо объединяли вы ее с вышестоящей upsream веткой ли нет).

Удаление удаленной remote ветки

В Git версии v1.7.0 , вы можете удалить remote ветку используя

$ git push --delete

что возможно легче запомнить, чем команду

$ git push :

которая была добавлена в Git v1.5.0 «чтобы удалить удаленную remote ветку или тег tag.»

Начиная с Git v2.8.0 вы также можете использовать git push с опцией -d как ярлык вместо --delete .

Более того, версия гита которая у вас установлена будет определять какой синтаксис использовать, более легкий или более сложный.

Удалить удаленную remote ветку

Цитата из 3-ей главы книги Pro Git Скотта Чакона:

Удаление Удалённых Веток

Полагаю вы завершили с работой в удаленной ветке, вы и ваши сотрудники закончили с новой фичей и смержили ее в вашу mster ветку на удаленном репозитории. Вы можете удалить удаленную ветку используя довольно тупой синтаксис git push : . Если вы хотите удалить вашу bugfix ветку с фиксом багов на сервере, вы запускаете следующую команду:

$ git push origin:serverfix To :schacon/simplegit.git - serverfix

Бабах! И не больше такой ветки на вашем сервере. Наверное вам захочется поставить закладку на эту страницу, потому что вам еще понадобится эта команда, и вы скорее всего забудете как она пишется. Способ чтобы запомнить эту команду, вспомнить прошлую git push : синтаксис которой мы рассматривали немного ранее. Если вы оставите , тогда вы буквально скажите следующее “Возьми ничего с моей стороны и сделай это .”

Я использовал git push origin:bugfix и это отлично работает.

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

Git fetch --all --prune

чтобы распространить изменения.