Eclipse / Egit, пункт меню Push to Remote недоступен - PullRequest
29 голосов
/ 06 января 2012

Я создал репозиторий на GitHub.Я создал локальный репозиторий git, используя Eclipse и Egit.С Team > Remote > Push.Мне удалось перенести локальное репо на GitHub.

Теперь я ожидал, что смогу использовать Team > Push to Upstream (а также извлекать из восходящего потока) в качестве нажатия одним нажатием (и извлечения / извлечения)), но этот пункт меню недоступен (выделен серым цветом).Я должен использовать Team > Remote > Push, чтобы каждый раз вручную заполнять информацию ( ctrl + пробел помогает).

После это , ясоздал удаленную конфигурацию и выдвинул ее из представления репозиториев, и я вижу удаленный GitHub-репозиторий, указанный в Remotes, но команда Team > Push to Upstream в меню отображается серым цветом.намек на то, что я сделал не так?

Ответы [ 6 ]

45 голосов
/ 19 мая 2012

Вот что я сделал, и это сработало нормально:

  1. Щелкните правой кнопкой мыши свой проект, выберите «Команда» → «Показать в представлении репозитория».Вы переключите перспективы и окажетесь во вкладке Git Repositories.
  2. Щелкните правой кнопкой мыши «Remotes» и выберите «Create Remote».В поле «Удаленное имя» введите «происхождение».Нажмите ОК.
  3. Нажмите Изменить.Введите вашу информацию, как вы делали во время первоначального нажатия.Нажмите Сохранить.

Теперь вы можете нажать, просто щелкнув правой кнопкой мыши по проекту, а затем Команда → Переместить в восходящий поток.

Поскольку пульт был добавлен в проект ввопрос, у каждого проекта может быть свой исходный источник, и они не будут мешать (тогда как решение Window> Preferences является глобальным параметром).

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

15 голосов
/ 21 февраля 2012

У меня была эта проблема, и, к счастью, я нашел способ снова включить опцию «Push to Upstream».

  1. Перейдите в Окно> Предпочтения> Команда> Git> Конфигурация .
  2. Выберите вкладку Настройки репозитория , а затем репозиторий, представляющий ваш проект.
  3. Нажмите « Новая запись ... »
  4. Ключ remote.origin.url
  5. Значение - это URL, который вы копируете с github. Обычно он предлагается на любом сайте, на котором вы регистрируетесь.

Возможно, есть более аккуратный способ достижения того же самого. Добравшись до этого места, я перестал искать, потому что теперь это работает.

4 голосов
/ 07 января 2012

Вам необходимо иметь следующий тип конфигурации в файле .git/config этого репозитория:

[branch "master"]
    remote = origin

Параметр remote может быть любым из ваших пультов или просто значением .

Вы можете редактировать конфигурацию хранилища, выбрав пункт меню Свойства из контекстного меню хранилища в представлении Git Repositories .

1 голос
/ 05 июня 2014

Я пришел сюда в поисках решения для решения аналогичной проблемы с битбакетом - хотя ни один из двух ответов с наибольшим количеством голосов не сработал для меня, он доказал, что у меня был вариант «Положить ветку ...», когда я пытался сделатьздесь написано «Non fast-forward», но когда я успешно произвел «pull», я смог перейти в upstream.

Может быть, это кому-нибудь поможет:)

0 голосов
/ 03 ноября 2016

В моем случае все операции git commit / push неактивны. Я исправил проблему, поместив папку репозитория в каталог git.

0 голосов
/ 17 августа 2014

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

Часть, которую я хочу выделить из этой статьи, следующая:

[branch "master"]
remote = origin
merge = refs/heads/master

Когда я внес изменения в .git / config и обновил затмение, ссылка «push to upstream» сработала для меня. Помните, я предполагаю, что в вашей перспективе Git настроен удаленный репозиторий для вашего удаленного репозитория.

...