Как я могу согласовать отдельную head с master / origin?

Проверить ветку и переключить ветку

Удаленный филиал попадает в местный
  • В Remote Branch -> Checkout As… -> укажите название ветки
  • После завершения в местных филиалах
Коммутация местного отделения
  • В Local Branch -> Checkout -> указать ветку
  • Переключение завершено
  • Переключение ветвей — это не операция копирования файла, а операция указателя; это переключатель, на который указывает указатель git HEAD, который указывает на текущую ветвь.
При переключении веток ветви влияют друг на друга
  • Если в локальной рабочей области нет незафиксированных изменений, ветвь будет переключаться плавно; следовательно: при переключении операцийПопробуйте зафиксировать код текущей ветки, Держите рабочую область и область кэша в чистоте

    Версия после фиксации не повлияет на переключаемую ветвь; переключитесь на другую ветку полностью, а при обратном переключении сохранится исходная модификация

  • Если работа не закончена и не может быть отправлена: (например, ветка A -> ветка B); IDEA выдаст подсказку —

    • Как справиться с этой ситуацией:
      • Выберите Force Checkout, некоторые незафиксированные изменения в локальной рабочей области (ветвь A) будут перезаписаны (перезаписаны ветвью B),Высокий шанс потерять код!
      • Выберите Smart Checkout, IDEA сначала выполнит команду stash, сохранит эти незафиксированные изменения, а затем произведет проверку в ветку B. После переключения на ветвь B удалите эти изменения, чтобы эти локальные изменения в ветке A были перенесены в ветвь B. (СвязанныйGIT (08) управление филиалом Примечание для переключения локальных филиалов)
      • Вы также можете использовать Show Diff на приведенном выше рисунке для объединения и вручную скопировать содержимое ветви A в ветку B.(Безопасный способ)

4 ответа

Лучший ответ

Попробуйте запустить

Чтобы удалить удаленные ветки PR и перезапустить работу Jenkins.

3

iamnotpretending
14 Апр 2014 в 18:37

Я хочу оставить здесь комментарий, потому что я столкнулся с проблемой с такими же симптомами, но с другой основной причиной. Наш Jenkins работал , и каждый PR выводился как и ошибка

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

1

Mike Starov
2 Окт 2019 в 15:26

К сожалению, я не могу добавить комментарий к ответу (который я считаю правильным). Но вчера мы столкнулись с этой проблемой в нашем экземпляре Jenkins, и у нее был нюанс, поэтому я хотел оставить это для будущих людей в этой ситуации.

Для нас удаление ссылок «merge» и «head» не решило проблему. (Возможно, это связано с тем, что он был основан на запросе на вытягивание, поступившем от вилки, которая не находится под нашим контролем

Обратите внимание, что ветвь на этой вилке не была повреждена.)

Точно так же мы попытались удалить весь PR на удаленной ссылке (в основном скопировать / вставить ответ на эту страницу и изменить PR #), и это тоже не решило проблему. (Он был удален чисто, но быстро снова появился после того, как я обрезал и обновил; казалось, что наше удаление не повлияло на пульт.) Это потому, что ссылка на извлечение .

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

Обращение в службу поддержки Github с четким объяснением проблемной ветки и ошибки дало им все необходимое для решения проблемы. (С моей стороны, я видел принудительный толчок по всем ссылкам слияния и головы PR.) Очевидно, вы захотите четко понять проблему, прежде чем связываться с ними, но в нашем случае это действительно было в удаленной ветке, которая у нас была нет контроля над.

1

BenP
26 Фев 2016 в 13:23

Судя по этой части:

Похоже, ваша работа Jenkins имеет грязное рабочее пространство: как будто файл существует, но он не может его заменить. Не говоря уже о том, что странно, что он пытается создать его, хотя его нет на вашем пульте дистанционного управления.

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

ОБНОВЛЕНИЕ

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

1

Community
23 Май 2017 в 12:31

Часто используемые команды

Чтобы инициализировать Git в репозитории, вам просто нужно ввести следующую команду. Если вы не инициализируете Git, вы не сможете запускать другие команды Git в этом репозитории.

Если вы используете GitHub и отправляете код в репозиторий GitHub, который хранится в Сети, вы используете удаленный репозиторий. Имя, установленное по умолчанию для этого удаленного репозитория, называется origin (источник), он же alias (псевдоним). Если вы скопировали проект из GitHub, у него уже есть источник. Вы можете просмотреть этот источник с помощью команды git remote -v. Она выдаст вам URL-адрес удаленного репозитория.

Если вы инициализировали свой репозиторий Git и хотите связать его с репозиторием на GitHub, вам придется создать его на GitHub, скопировать предоставленный URL-адрес и использовать команду git remote add origin <URL>, где <URL> — ссылка на репозиторий GitHub. Оттуда вы можете добавлять, коммитить и пушить в удаленный репозиторий.

Допустим, вы скопировали чей-то удаленный репозиторий и хотите изменить его владельца на свою учетку GitHub. Схема такая же, как с git remote add origin, с одним дополнением: используйте set-url, чтобы изменить удаленный репозиторий.

Самый распространенный способ скопировать репозиторий — через git clone с указанием URL.

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

Вы быстро поймете, что ветки — это удобно. Если вы не знаете, что это такое, поищите руководство по этой теме. Это понадобится в дальнейшем.

Команда git branch перечислит все ветки на вашем компьютере. Если вы хотите создать новую ветку, можете использовать команду git branch <name>, где <name> — имя ветки (например, master).

Команда git checkout <name> переключит на существующую ветку. Поэтому чтобы создать новую ветку и сразу же переключиться на нее, можете использовать команду git checkout -b <name>. Обычно эту команду используют, чтобы не писать отдельно git branch, а отдельно git checkout.

Если вы внесли кучу изменений в ветку и хотите смержить ее в основную ветку (назовем ее develop), используйте команду git merge <branch>. Если захочется при этом сначала провести checkout основной ветки, тогда запустите git merge develop, чтобы смержить develop в основную ветку.

Если вы работаете еще с кем-то, может случиться так, что репозиторий обновили на GitHub, но у вас изменения не появились.  В этом случае используйте git pull origin <branch>, чтобы получить последние изменения указанной удаленной ветки.

Если вам интересно узнать, какие файлы изменили, можете использовать git status. Если вы хотите увидеть, насколько сильно был изменен файл, используйте git diff, чтобы увидеть количество измененных строк.

Как переименовать ветку

Иногда оказывается, что первоначально созданное имя ветки не самое лучшее. Его можно изменить.

Локальную

Если еще не выполнена команда push, то достаточно переименовать локальную ветку.

Чтобы переименовать локальную ветку, выполним команду:

$ git branch -m <old-name> <new-name>

Например, переименуем ветку testing в ветку test:

$ git branch –m testing test

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

$ git branch -m <new-name>

Например, текущая ветка у нас subbranch_of_testing. Переименуем ее в subbranch:

$ git branch –m subbranch

Удаленную

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

$ git push origin :old-name new-name

здесь origin — имя удаленного репозитория (обычно удаленный репозиторий так называется),old-name —  имя ветки локальной ветки,new-name — новое имя ветки в удаленном репозитории.

Например, надо переименовать ветку testing в test:

$ git push origin :testing test

Команды для продвинутых

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

Команда git logo позволяет увидеть историю коммитов. Она-то и поможет, если вам нужно просмотреть историю и изменить старые коммиты.

Коммиты будут выдаваться в виде сообщения и его хэша — рандомный набор цифр и букв. Что-то вроде этого: c3d882aa1aa4e3d5f18b3890132670fbeac912f7.

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

Если вам нужно проверить свое приложение из предыдущего коммита, можно сделать это напрямую — просто используйте хэш.

Затем, если вы внесли изменения в ветку «из прошлого» и хотите снова запушить, вам придется использовать force push.

Внимание: force push — штука опасная, использовать ее можно только в крайнем случае, когда других вариантов не остается. Force push перепишет историю вашего приложения — все, что было после force push, исчезнет

Иногда просто нецелесообразно хранить все в одном коммите. Если вы хотите сохранить свой прогресс, прежде чем исполнить что-то рисковое, или, возможно, вы допустили ошибку и хотите избавиться от нее в истории версий, используйте git rebase.

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

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

Чтобы объединить коммиты и отбросить их сообщения, нам нужно изменить параметр «pick» на «fixup» (как это сделано чуть ниже)

Обратите внимание, что в Vim вам нужно нажать a  или  i , чтобы редактировать текст, а для сохранения и выхода нужно нажать escape, а затем shift + z + z. Не спрашивайте меня, почему так, просто поверьте

Это объединит все ваши коммиты в коммит с сообщением oldest commit message («самое старое сообщение коммита»).

Следующий шаг — переименование сообщения коммита. Как это делать — дело вкуса. Я рекомендую использовать .

Чтобы изменить сообщение коммита, используйте флаг amend.

Эта команда тоже откроет Vim. Кнопки, чтобы начать редактировать, все те же. Вот пример хорошего сообщения коммита:

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

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

В Git почти бесконечное количество команд. Но перечисленные в этой статье команды — чуть ли не единственные, которые потребуются в первые несколько лет программирования.

3 ответа

Лучший ответ

Обновление от июля 2021 года:

Git для Windows 2.32.0 (2) включает GCM (ядро Git Credential Manager) v2.0.475.64295, которая должна решить проблему / PR 374 («Исправить ошибку, при которой подсказки графического интерфейса не отображались в Windows»).

Оригинальный ответ (июнь 2021 г.):

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

Вам следует:

  • дважды проверьте наш (перед открытием git bash), чтобы указать ,
  • дважды проверьте, что хранится в диспетчере учетных данных Windows

Вы делаете это с помощью:

Если вы видите неправильный пароль, удалите его с помощью:

Повторяйте команду , пока не увидите всплывающее окно (тогда не вводите свои учетные данные)

Затем повторите и введите свои учетные данные для их сохранения.

Обратите внимание, что git-for-windows / git issue 3268 указывает на проблема 364. В качестве временного решения:

В качестве временного решения:

Обратите внимание, что v2.0.475 a> только что был выпущен для исправления проблемы 364 с PR 375 в контексте Git 2.32 (май 2021 г.). Это исправление должно быть включено в последний снимок состояния Git для Windows

6

VonC
7 Июл 2021 в 11:54

Я считаю, что в последней версии (2.32) есть ошибка, попробуйте понизить git до этой версии (2.30.x) это ссылка на скачать git 2.30.2

karbi
30 Июн 2021 в 17:44

Пробовал как 1-й, так и 2-й способы. Неудачный. Однако после переустановки я перезагрузил компьютер, и после запуска Git установил восстановление / дополнение. После этого появилось всплывающее окно — прошел проверку и все получилось. После этого на электронную почту пришло письмо: собственное приложение GitHub OAuth (Git Credential Manager) с областями сущности, репо и рабочего процесса недавно было авторизовано для доступа к вашей учетной записи. Посетите https://github.com/settings/connections/applications/0120e057bd645470c1ed для получения дополнительной информации. Информация. В конце концов, я добился своей цели. Тогда должно быть проще.

Yurii Khaminich
8 Июл 2021 в 05:18

Общее

Git — система контроля версий (файлов). Что-то вроде возможности сохраняться в компьютерных играх (в Git эквивалент игрового сохранения — коммит)

Важно: добавление файлов к «сохранению» двухступенчатое: сначала добавляем файл в индекс (), потом «сохраняем» ()

Любой файл в директории существующего репозитория может находиться или не находиться под версионным контролем (отслеживаемые и неотслеживаемые).

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

Ключ к пониманию

Ключ к пониманию концепции git — знание о «трех деревьях»:

  • Рабочая директория — файловая система проекта (те файлы, с которыми вы работаете).
  • Индекс — список отслеживаемых git-ом файлов и директорий, промежуточное хранилище изменений (редактирование, удаление отслеживаемых файлов).
  • Директория — все данные контроля версий этого проекта (вся история разработки: коммиты, ветки, теги и пр.).

Коммит — «сохранение» (хранит набор изменений, сделанный в рабочей директории с момента предыдущего коммита). Коммит неизменен, его нельзя отредактировать.

У всех коммитов (кроме самого первого) есть один или более родительских коммитов, поскольку коммиты хранят изменения от предыдущих состояний.

Простейший цикл работ

  • Редактирование, добавление, удаление файлов (собственно, работа).
  • Индексация/добавление файлов в индекс (указание для git какие изменения нужно будет закоммитить).
  • Коммит (фиксация изменений).
  • Возврат к шагу 1 или отход ко сну.

Указатели

  • — указатель на текущий коммит или на текущую ветку (то есть, в любом случае, на коммит). Указывает на родителя коммита, который будет создан следующим.
  • — указатель на коммит, с которого вы только что переместили (командой , например).
  • Ветка (, etc.) — указатель на коммит. При добавлении коммита, указатель ветки перемещается с родительского коммита на новый.
  • Теги — простые указатели на коммиты. Не перемещаются.

Перед началом работы нужно выполнить некоторые настройки:

Если вы в Windows:

Длинный вывод в консоли: Vim

Если нужно что-то написать, нажмите i — это переход в режим вставки текста. Если нужно сохранить изменения, перейдите в командный режим и наберите :w.

# Нажатия кнопок
ESC     — переход в командный режим
i       — переход в режим редактирования текста
ZQ (зажат Shift, поочередное нажатие) — выход без сохранения
ZZ (зажат Shift, поочередное нажатие) — сохранить и выйти
```bash
# Нажатия кнопок
ESC     — переход в командный режим
i       — переход в режим редактирования текста
ZQ (зажат Shift, поочередное нажатие) — выход без сохранения
ZZ (зажат Shift, поочередное нажатие) — сохранить и выйти

# Ввод в командном режиме
:q!             — выйти без сохранения
:wq             — сохранить файл и выйти
:w filename.txt — сохранить файл как filename.txt

Объединить ветку

  • Рабочая область находится в текущей ветке A, а ветку B нужно объединить с веткой A
  • нота: Это нужно сделать один раз перед удаленным слиянием с текущимОбновить проект; в противном случае удаленная ветвь не будет последней, что не приведет к слиянию
  • После выполнения запрос результата
  • Выберите ветку B -> Объединить с текущим; будет произведено следующееДва видаПроисходит
  • Случай 1. Имеется модификация незавершенного состояния в локальной рабочей области или области временного хранения, и возник конфликт.
    • ПоявитсяGit Merge ProblemИнтерфейс обработки
    • В этом случае нажмите «Умное слияние», что похоже на оформление заказа выше.
  • Ситуация 2: локальная рабочая зона и зона временного хранения очень чистые, если есть конфликт между складами
    • Будет выглядеть следующим образомFile Merged with ConflictsИнтерфейс
    • Дважды щелкните файл или нажмите «Объединить», чтобы развернуть интерфейс обработки конфликтов и объединить окончательный код в средний столбец результатов.
    • После завершения обработки нажмите Применить, чтобы завершить ручное слияние, и текущий будет удален из списка конфликтов.
  • После завершения слияния в консоли управления версиями появится сообщение об успешном слиянии.
  • Предложение: Старайтесь содержать в чистоте рабочую и промежуточную зоны перед объединением ветвей.
  • После этой операции выполняется слияниеАвтоматически выполнить фиксациюОперация, создать сообщение фиксации слияния

Как создать подветку ветки

Обычно мы ответвляемся от основной ветки master, но не всегда. Иногда требуется сделать ответвление от созданной ветки — так сказать,  ответвление второго порядка.

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

$ git branch testing

создает ответвление от основной ветки master.

Если нам надо ответвиться не от основной ветки, а от вновь созданной testing, то выполним поочередно команды:

$ git checkout testing

$ git checkout -b subbranch_of_testing testing

Первая команда переключит нас на ветку testing.
Вторая команда создаст ветку с именем subbranch_of_testing, ответвляющуюся от testing, и переключит нас на нее.
Как понятно из имени, subbranch_of_testing – это подветка ветки testing.

9 ответов

Лучший ответ

Во-первых, дважды проверьте, действительно ли ветка была отправлена ​​удаленно, с помощью команды . Если в выводе появляется новая ветка, попробуйте дать команду : она должна загрузить ссылки на ветки из удаленного репозитория.

Если ваша удаленная ветка по-прежнему не отображается, дважды проверьте (в выходных данных ), каково имя ветки на удаленном компьютере, и, в частности, начинается ли оно с . Это потому, что по умолчанию значение :

Так что только удаленные ссылки, имя которых начинается с , будут отображаться локально как ссылки удаленного отслеживания в (т.е. они станут ветвями удаленного отслеживания)

190

Marco Leogrande
6 Окт 2012 в 20:57

Вы можете проверить удаленную ветку / n git fetch && git checkout remotebranch

thao vu
16 Янв 2020 в 14:20

В итоге у меня получилось добавить имя удаленного репозитория к команде , например:

Теперь вы можете увидеть их все вот так:

1

Serj Sagan
5 Май 2017 в 03:55

Я использовал грубую силу и удалил пульт, а затем добавил его

4

Rubber Duck
6 Мар 2019 в 11:38

Звучит банально, но моя проблема заключалась в том, что я не участвовал в правильном проекте. Убедитесь, что вы участвуете в проекте, в котором рассчитываете участвовать; в противном случае вы не сможете опустить нужные ветви.

4

BlackHatSamurai
23 Окт 2017 в 22:21

Выполнение удаленного обновления git также обновит список веток, доступных из удаленного репозитория.

Если вы используете TortoiseGit, начиная с версии 1.8.3.0, вы можете выполнить команду «Git -> Sync», и в левом нижнем углу появившегося окна появится кнопка «Удаленное обновление». Щелкните это. Затем вы сможете выполнить «Git -> Switch / Checkout», и новая удаленная ветка появится в раскрывающемся списке ветвей, которые вы можете выбрать.

32

metaforge
26 Июн 2013 в 20:05

Допустим, мы ищем выпуск / 1.0.5

Когда не работает и вы не видите удаленную ветку, а не показывает эту конкретную ветвь.

1. Распечатать все ссылки с удаленного компьютера (ветки, теги, …):

Должен показать вам удаленную ветку, которую вы ищете.

В выводе появится новая ветка .

2. Принудительное получение удаленной ветки:

Теперь у вас также есть ссылки локально, вы можете проверить (или что-то еще) эту ветку.

Работа сделана!

39

Parth Tamane
4 Июн 2021 в 06:11

Самый простой ответ:

72

Jacek Dziurdzikowski
17 Янв 2020 в 16:27

Проверьте, содержит ли

Если да, измените его, чтобы сказать

Тогда вы сможете его использовать:

109

Jesse Glick
6 Сен 2017 в 17:26

6 ответов

Лучший ответ

Прежде чем ответить, давайте добавим некоторую предысторию, объясняющую, что это за .

First of all what is HEAD?

— это просто ссылка на текущий коммит (последний) в текущей ветке. В любой момент времени может быть только один (исключая ).

Содержимое хранится внутри и содержит 40 байтов SHA-1 текущего коммита.

detached HEAD

Если вы не используете последнюю фиксацию — это означает, что указывает на предыдущую фиксацию в истории, она называется detached HEAD.

В командной строке это будет выглядеть так — SHA-1 вместо имени ветви, поскольку не указывает на кончик текущей ветви:

Несколько вариантов того, как восстановить систему с отключенной HEAD:

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

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

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

Это вернет вас к желаемой фиксации

«Переместите» ГОЛОВУ назад к желаемому коммиту.

Примечание. (Начиная с Git 2.7) вы можете также используйте git rebase —no-autostash.

«Отменить» данный диапазон фиксации или фиксации. Команда сброса «отменит» любые изменения, сделанные в данном коммите. Новый коммит с патчем отмены будет зафиксирован, в то время как оригинальный коммит останется в истории.

Эта схема иллюстрирует, какая команда что делает. Как вы можете видеть, измените .

439

Community
20 Июн 2020 в 09:12

Сначала локально:

Чтобы убедиться, что вы на правильной позиции, проверьте:

Вы увидите что-то вроде:

Затем перепишите историю в ветке удаленного отслеживания , чтобы отразить изменение:

29

Abel
25 Июл 2020 в 20:57

Сегодня я по ошибке проверил фиксацию и начал работать над ней, сделав несколько коммитов в состоянии отсоединения HEAD. Затем я перешел в удаленную ветку с помощью следующей команды:

Затем

Затем

Наконец-то я получил все изменения в своей ветке, которые я сделал при отсоединении HEAD.

Peter Mortensen
27 Янв 2020 в 02:18

Когда вы запускаете команду , тогда HEAD отсоединяется от , и ветвь становится доступной дольше.

Вернитесь в предыдущее место, выполните пошаговую команду —

  1. (скажите хозяин)

Вы вернетесь в предыдущее место с обновленным коммитом из удаленного репозитория.

Peter Mortensen
27 Янв 2020 в 02:16

Вопрос можно прочитать так:

Я был в отключенном состоянии с в и набрал (потому что я хотел раздавить). Теперь я передумал, как мне вернуться к в ?

Прямой ответ:

Но я задал этот вопрос, потому что мне надоело набирать (копировать и вставлять) хеши коммитов или их аббревиатуры каждый раз, когда я хотел сослаться на предыдущий и искал в Google, есть ли какие-нибудь сокращения.

Оказывается, есть!

(или в моем случае )

Кстати, это было то же самое, что вернуться в предыдущий текущий каталог в * nix! Итак, ура, я выучил две вещи одним выстрелом.

4

Peter Mortensen
27 Янв 2020 в 02:14

Самое быстрое решение (всего 1 шаг)

Используйте

Вы увидите . Подтвердите, что это нужная ветка.

Краткое объяснение: эта команда вернет HEAD в последнее положение. См. Примечание о результатах в конце этого ответа.

Мнемоника: этот подход очень похож на использование для возврата в ранее посещенный каталог. Синтаксис и применимые случаи довольно хорошо совпадают (например, это полезно, когда вы действительно хотите, чтобы HEAD вернулся туда, где он был).

Более методичное решение (2 шага, но запоминающееся)

Быстрый подход решает вопрос ОП. Но что, если ваша ситуация немного отличается: скажем, вы перезапустили Bash, а затем обнаружили, что HEAD отключен. В таком случае, вот 2 простых, легко запоминающихся шага.

Используйте

Вы видите список существующих местных филиалов. Выберите название ветки, которое вам подходит.

Используйте

Вы увидите . Успех!

Результаты

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

Обратите внимание, что и , и дадут дополнительные инструкции, если вы зафиксировали изменения, когда HEAD был отключен. 13

Kay V
13 Фев 2020 в 16:51

13

Kay V
13 Фев 2020 в 16:51

git не видит удаленную ветку, отправленную другими

http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>style=»clear:both;»>

Решение

бежать:

Введение и расширение команды git fetch

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

Например, получить главную ветвь исходного хоста. Полученное обновление следует читать в форме «имени удаленного хоста / имени ветви» на локальном хосте. Например, мастер исходного хоста должен быть прочитан с помощью origin / master.

Параметр -r команды git branch можно использовать для просмотра удаленных ветвей, а параметр -a — для просмотра всех ветвей.

Приведенная выше команда указывает, что текущая ветвь локального хоста является главной, а удаленная ветка — origin / master. После получения обновления удаленного хоста вы можете использовать команду git checkout для создания на его основе новой ветки.

Приведенная выше команда указывает, что новая ветка создается на основе origin / master. Кроме того, вы также можете использовать команду git merge или команду git rebase для объединения удаленных веток в локальной ветке.

или же

Вышеупомянутая команда означает объединение origin / master в текущей ветке.

Интеллектуальная рекомендация

1. Для реальных сигналов (для понимания): A (ω) является соотношением амплитуды выходного сигнала и амплитуды входного сигнала, называемого частотой амплитуды. Φ (ω) — это разница межд…

Один. вести Многие люди задавали некоторые вопросы о создании проекта Flex + LCDS (FDS) в сообщениях и группах. Из-за операции ее трудно четко объяснить, поэтому я написал простой учебник (я обещал эт…

package com.example.phonehttp; import android.os.Bundle; import android.os.Handler; import android.app.Activity; import android.widget.ScrollView; import android.widget.TextView; public class MainActi…

Он предназначен для реализации подкласса того же родительского класса с родительским классом. Полиморфизм Один и тот же ссылочный тип использует разные экземпляры для выполнения разных операций; Идея …

тема: Объедините два упорядоченных слоя в новый заказанный список и возврат. Новый список состоит из всех узлов двух связанных списков, данных сплавным. Пример: Анализ: два связанных списка состоит в …

Вам также может понравиться

D. Самая ценная строка Пример ввода 2 2 aa aaa 2 b c Образец вывода aaa c На самом деле, будучи задетым этим вопросом, вы должны быть осторожны. После инвертирования строки, если две строки имеют один…

Given a 2D integer matrix M representing the gray scale of an image, you need to design a smoother to make the gray scale of each cell becomes the average gray scale (rounding down) of all the 8 surro…

calc () может быть очень незнакомым для всех, и трудно поверить, что calc () является частью CSS. Поскольку он выглядит как функция, почему он появляется в CSS, поскольку это функция? Этот момент такж…

Основываясь на дереве регрессии, сформированном CART, а также на предварительной и последующей обрезке дерева, код выглядит следующим образом:…

Откат Обновление в режиме онлайн с версии Centos (CentOS Linux версии 7.3.1611 (Core) до CentOS Linux версии 7.5.1804 (Core)) # ошибка соединения yum-ssh после обновления yexpected key exchange group …

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: